Teamcenter C++ API Reference  2312
AbstractResource.hxx
Go to the documentation of this file.
1 /*
2  Copyright 2022 Siemens Digital Industries Software
3  ==================================================
4  Copyright 2014.
5  Siemens Product Lifecycle Management Software Inc.
6  All Rights Reserved.
7  ==================================================
8  Copyright 2022 Siemens Digital Industries Software
9 */
10 
19 #ifndef LIS0LISFMWRK_ABSTRACTRESOURCE_HXX
20 #define LIS0LISFMWRK_ABSTRACTRESOURCE_HXX
21 
22 #include <string>
23 #include <map>
24 #include <vector>
25 
27 #include <Lis0lisfmwrk/libLis0lisfmwrk_exports.h>
28 
41 namespace lis0lisfmwrk
42 {
43  class AbstractResource;
44 }
45 
46 class LIS0LISFMWRK_API lis0lisfmwrk::AbstractResource
48 {
49 public:
50 
53 
55  virtual ~AbstractResource();
56 
60  void setAbout( const std::string& about );
61 
65  std::string getAbout();
66 
70  void setTypes( const std::vector<std::string>& types );
71 
75  std::vector<std::string> getTypes();
76 
80  std::string getType();
81 
85  void addType( const std::string& type );
86 
90  void addNamespace( const std::string& value, const std::string& key );
91 
95  std::string getNamespacePrefix( const std::string& url, bool &isNull );
96 
100  std::string getNamespaceURL( const std::string& prefix, bool &isNull );
101 
105  std::map<std::string, std::string> getNamespaces();
106 
110  void addProperty( lis0lisfmwrk::Property* value, const std::string& key );
111 
115  lis0lisfmwrk::Property* getProperty( const std::string& key );
116 
120  std::map<std::string, lis0lisfmwrk::Property*> getProperties();
121 
125  void addExtendedProperty( lis0lisfmwrk::Property* value, const std::string& key );
126 
130  lis0lisfmwrk::Property* getExtendedProperty( const std::string& key );
131 
135  std::map<std::string, lis0lisfmwrk::Property*> getExtendedProperties();
136 
140  void addXmlLiteralPropertyValue( const std::string& str, const std::string& key );
141 
145  std::string getXmlLiteralPropertyValue( const std::string& key );
146 
150  void addSimpleStringPropertyValue( const std::string& str, const std::string& key );
151 
155  std::string getSimpleStringPropertyValue( const std::string& key );
156 
160  void addResourcePropertyValue( const std::string& str, const std::string& key );
161 
165  std::string getResourcePropertyValue( const std::string& key );
166 
170  std::vector<std::string> getResourcePropertyValues( const std::string& key );
171 
178  void addLocalResourcePropertyValue( lis0lisfmwrk::AbstractResource* value, const std::string& key );
179 
186 
192  std::vector<lis0lisfmwrk::AbstractResource*> getLocalResourcePropertyValues( const std::string& key );
193 
197  void addBoolDataPropertyValue( const bool& value, const std::string& key );
198 
202  bool getBoolDataPropertyValue( const std::string& key, bool &isNull );
203 
207  Teamcenter::BoolVector getBoolDataPropertyValues( const std::string& key );
208 
212  void addDoubleDataPropertyValue( const double& value, const std::string& key );
213 
217  double getDoubleDataPropertyValue( const std::string& key, bool &isNull );
218 
222  Teamcenter::DoubleVector getDoubleDataPropertyValues( const std::string& key );
223 
227  void addFloatDataPropertyValue( const double& value, const std::string& key );
228 
232  double getFloatDataPropertyValue( const std::string& key, bool &isNull );
233 
237  Teamcenter::DoubleVector getFloatDataPropertyValues( const std::string& key );
238 
242  void addDecimalDataPropertyValue( const double& value, const std::string& key );
243 
247  double getDecimalDataPropertyValue( const std::string& key, bool &isNull );
248 
252  Teamcenter::DoubleVector getDecimalDataPropertyValues( const std::string& key );
253 
257  void addIntDataPropertyValue( const int& value, const std::string& key );
258 
262  int getIntDataPropertyValue( const std::string& key, bool &isNull );
263 
267  Teamcenter::IntVector getIntDataPropertyValues( const std::string& key );
268 
273  void addStringDataPropertyValue( const std::string& value, const std::string& key );
274 
278  std::string getStringDataPropertyValue( const std::string& key, bool &isNull );
279 
283  std::vector<std::string> getStringDataPropertyValues( const std::string& key );
284 
288  void addDateTimePropertyValue( const date_t& value, const std::string& key );
289 
293  date_t getDateTimePropertyValue( const std::string& key, bool &isNull );
294 
298  Teamcenter::DateVector getDateTimePropertyValues( const std::string& key );
299 
303  void updateNameSpacePrefix( const std::string& oldPrefix, const std::string& newPrefix, const std::string& prefixValue );
304 
305 protected:
309  std::string m_about;
310 
314  std::vector<std::string> m_types;
315 
319  std::map<std::string, lis0lisfmwrk::Property*> m_properties;
320 
324  std::map<std::string, lis0lisfmwrk::Property*> m_extendedProperties;
325 
329  std::map<std::string, std::string> m_namespaceMap;
330 private:
331 
334 
337 
338 };
339 
342 #include <Lis0lisfmwrk/libLis0lisfmwrk_undef.h>
343 #endif