\r\n

51Degrees Device Detection C/C++  4.4

A device detection library that is used natively or by 51Degrees products

RequiredPropertiesConfig.hpp

1 /* *********************************************************************
2  * This Original Work is copyright of 51 Degrees Mobile Experts Limited.
3  * Copyright 2023 51 Degrees Mobile Experts Limited, Davidson House,
4  * Forbury Square, Reading, Berkshire, United Kingdom RG1 3EU.
5  *
6  * This Original Work is licensed under the European Union Public Licence
7  * (EUPL) v.1.2 and is subject to its terms as set out below.
8  *
9  * If a copy of the EUPL was not distributed with this file, You can obtain
10  * one at https://opensource.org/licenses/EUPL-1.2.
11  *
12  * The 'Compatible Licences' set out in the Appendix to the EUPL (as may be
13  * amended by the European Commission) shall be deemed incompatible for
14  * the purposes of the Work and the provisions of the compatibility
15  * clause in Article 5 of the EUPL shall not apply.
16  *
17  * If using the Work as, or as part of, a network application, by
18  * including the attribution notice(s) required under Article 5 of the EUPL
19  * in the end user terms of the application under an appropriate heading,
20  * such notice(s) shall fulfill the requirements of that article.
21  * ********************************************************************* */
22 
23 #ifndef FIFTYONE_DEGREES_REQUIRED_PROPERTIES_HPP
24 #define FIFTYONE_DEGREES_REQUIRED_PROPERTIES_HPP
25 
26 #include <string>
27 #include <vector>
28 #include "properties.h"
29 
30 using std::string;
31 using std::vector;
32 
33 namespace FiftyoneDegrees {
34  namespace Common {
59  public:
71 
78  RequiredPropertiesConfig(const vector<string> *properties);
79 
86  RequiredPropertiesConfig(vector<string> *properties);
87 
94  RequiredPropertiesConfig(const char *properties);
95 
102  RequiredPropertiesConfig(const string &properties);
103 
110  RequiredPropertiesConfig(const string *properties);
111 
116  virtual ~RequiredPropertiesConfig();
117 
128  vector<string> getProperties() const;
129 
137 
143  int getCount() const;
144 
155  bool containsProperty(const char *property) const;
156 
163  bool containsProperty(const string property) const;
164  private:
167  };
168  }
169 }
170 
171 #endif
virtual ~RequiredPropertiesConfig()
Destroy the configuration, freeing all the memory allocated within it.
fiftyoneDegreesPropertiesRequired * getConfig()
Get a pointer to the underlying C required properties structure.
bool containsProperty(const char *property) const
Get whether or not the property name supplied is contained in the required properties configuration.
51Degrees base namespace.
Definition: ComponentMetaDataBuilderHash.hpp:33
RequiredPropertiesConfig()
Constructs a new instance of the RequiredPropertiesConfig so that all possible properties contained i...
C++ class wrapper for the fiftyoneDegreesPropertiesRequired structure.
Definition: RequiredPropertiesConfig.hpp:58
Defines a set of properties which are required by a caller.
Definition: properties.h:175
int getCount() const
Get the number of properties contained within the required properties configuration.
vector< string > getProperties() const
Get the list of properties which are required.