OpFlex Framework 1.7.0
MockOpflexServer.h
Go to the documentation of this file.
1/* -*- C++ -*-; c-basic-offset: 4; indent-tabs-mode: nil */
6/*
7 * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
8 *
9 * This program and the accompanying materials are made available under the
10 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
11 * and is available at http://www.eclipse.org/legal/epl-v10.html
12 */
13
14#include <vector>
15#include <utility>
16
18
19#pragma once
20#ifndef OPFLEX_TEST_MOCKOPFLEXSERVER_H
21#define OPFLEX_TEST_MOCKOPFLEXSERVER_H
22
23namespace opflex {
24
25namespace engine {
26namespace internal {
27
28class MockOpflexServerImpl;
29
30} /* namespace internal */
31} /* namespace engine */
32
33namespace test {
34
40public:
44 typedef std::pair<uint8_t, std::string> peer_t;
45
49 typedef std::vector<peer_t> peer_vec_t;
50
59 MockOpflexServer(int port, uint8_t roles, peer_vec_t peers,
60 const modb::ModelMetadata& md);
61
66
70 void start();
71
75 void stop();
76
84 void readPolicy(const std::string& file);
85
97 void enableSSL(const std::string& caStorePath,
98 const std::string& serverKeyPath,
99 const std::string& serverKeyPass,
100 bool verifyPeers = true);
101
107 const peer_vec_t& getPeers() const;
108
114 int getPort() const;
115
121 uint8_t getRoles() const;
122
123private:
124 engine::internal::MockOpflexServerImpl* pimpl;
125};
126
127} /* namespace test */
128} /* namespace opflex */
129
130#endif /* OPFLEX_TEST_MOCKOPFLEXSERVER_H */
131
Interface definition file for ModelMetadata.
Model metadata encapsulated all the metadata for a given model.
Definition ModelMetadata.h:47
int getPort() const
Get the port number that this server was configured with.
void stop()
Stop the server.
void enableSSL(const std::string &caStorePath, const std::string &serverKeyPath, const std::string &serverKeyPass, bool verifyPeers=true)
Enable SSL for connections to opflex peers.
const peer_vec_t & getPeers() const
Get the peers that this server was configured with.
std::pair< uint8_t, std::string > peer_t
a pair of a role bitmask and connectivity string
Definition MockOpflexServer.h:44
uint8_t getRoles() const
Get the roles that this server was configured with.
void start()
Start the server.
std::vector< peer_t > peer_vec_t
A vector of peers.
Definition MockOpflexServer.h:49
void readPolicy(const std::string &file)
Read policy into the server from the specified file.
MockOpflexServer(int port, uint8_t roles, peer_vec_t peers, const modb::ModelMetadata &md)
Construct a new mock opflex server.
~MockOpflexServer()
Destroy the opflex server.