activemq-cpp-3.9.5
SSLSocketFactory.h
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18#ifndef _DECAF_NET_SSL_SSLSOCKETFACTORY_H_
19#define _DECAF_NET_SSL_SSLSOCKETFACTORY_H_
20
21#include <decaf/util/Config.h>
22
24
25#include <vector>
26#include <string>
27
28namespace decaf {
29namespace net {
30namespace ssl {
31
37 class DECAF_API SSLSocketFactory : public SocketFactory {
38 private:
39
40 static SocketFactory* defaultSocketFactory;
41
42 protected:
43
45
46 public:
47
49
61 static SocketFactory* getDefault();
62
73 virtual std::vector<std::string> getDefaultCipherSuites() = 0;
74
85 virtual std::vector<std::string> getSupportedCipherSuites() = 0;
86
107 virtual Socket* createSocket(Socket* socket, std::string host, int port, bool autoClose) = 0;
108
109 public:
110
112
113 };
114
115}}}
116
117#endif /* _DECAF_NET_SSL_SSLSOCKETFACTORY_H_ */
virtual Socket * createSocket()
Creates an unconnected Socket object.
Definition Socket.h:44
virtual Socket * createSocket(Socket *socket, std::string host, int port, bool autoClose)=0
Returns a socket layered over an existing socket connected to the named host, at the given port.
static SocketFactory * getDefault()
Returns the current default SSL SocketFactory, the factory is returned as a pointer however the calle...
virtual std::vector< std::string > getSupportedCipherSuites()=0
Returns the names of the cipher suites which could be enabled for use on an SSL connection.
virtual std::vector< std::string > getDefaultCipherSuites()=0
Returns the list of cipher suites which are enabled by default.
#define DECAF_API
Definition Config.h:29
Definition SSLContext.h:27
Definition URLStreamHandlerManager.h:26
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition AprPool.h:25