activemq-cpp-3.9.5
ProviderService.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_SECURITY_PROVIDERSERVICE_H_
19#define _DECAF_SECURITY_PROVIDERSERVICE_H_
20
21#include <decaf/util/Config.h>
22
23#include <string>
24
25namespace decaf {
26namespace security {
27
28 class Provider;
29 class SecuritySpi;
30
32 private:
33
34 const Provider* provider;
35 std::string type;
36 std::string algorithm;
37
38 public:
39
40 ProviderService(const Provider* provider, const std::string& type, const std::string& algorithm);
41
43
49 std::string getType() const {
50 return this->type;
51 }
52
59 std::string getAlgorithm() const {
60 return this->algorithm;
61 }
62
71 const Provider* getProvider() const {
72 return provider;
73 }
74
82 virtual SecuritySpi* newInstance() = 0;
83
90 std::string toString() const {
91 return getType() + "." + getAlgorithm();
92 }
93
94 };
95
96}}
97
98#endif /* _DECAF_SECURITY_PROVIDERSERVICE_H_ */
This class represents a "provider" for the Decaf Security API, where a provider implements some or al...
Definition Provider.h:46
std::string getType() const
Gets the type of service this ProviderService instance supports.
Definition ProviderService.h:49
std::string getAlgorithm() const
Gets the algorithm name that this ProviderService supplies for its service type.
Definition ProviderService.h:59
std::string toString() const
Return a String representation of this service.
Definition ProviderService.h:90
ProviderService(const Provider *provider, const std::string &type, const std::string &algorithm)
virtual SecuritySpi * newInstance()=0
Return a new instance of the implementation described by this service.
const Provider * getProvider() const
Returns a pointer to the Provider that owns this ProviderService.
Definition ProviderService.h:71
Base class used as a Marker for all Security Provider Interface classes in the Decaf Security API.
Definition SecuritySpi.h:32
#define DECAF_API
Definition Config.h:29
Definition Engine.h:26
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition AprPool.h:25