Fesapi 2.10.1.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
Loading...
Searching...
No Matches
PropertyKind.h
1/*-----------------------------------------------------------------------
2Licensed to the Apache Software Foundation (ASF) under one
3or more contributor license agreements. See the NOTICE file
4distributed with this work for additional information
5regarding copyright ownership. The ASF licenses this file
6to you under the Apache License, Version 2.0 (the
7"License"; you may not use this file except in compliance
8with the License. You may obtain a copy of the License at
9
10 http://www.apache.org/licenses/LICENSE-2.0
11
12Unless required by applicable law or agreed to in writing,
13software distributed under the License is distributed on an
14"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15KIND, either express or implied. See the License for the
16specific language governing permissions and limitations
17under the License.
18-----------------------------------------------------------------------*/
19#pragma once
20
21#include "../eml2/PropertyKind.h"
22#include "PropertyKindMapper.h"
23
24namespace RESQML2_0_1_NS
25{
27 class PropertyKind final : public EML2_NS::PropertyKind
28 {
29 public:
30
38 DLL_IMPORT_OR_EXPORT PropertyKind(gsoap_resqml2_0_1::eml20__DataObjectReference* partialObject) : EML2_NS::PropertyKind(partialObject) {}
39
57 PropertyKind(COMMON_NS::DataObjectRepository * repo, const std::string & guid, const std::string & title,
58 const std::string & namingSystem, gsoap_resqml2_0_1::resqml20__ResqmlUom uom, bool isAbstract, gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind parentEnergisticsPropertyKind);
59
76 PropertyKind(const std::string & guid, const std::string & title,
77 const std::string & namingSystem, gsoap_resqml2_0_1::resqml20__ResqmlUom uom, bool isAbstract, EML2_NS::PropertyKind * parentPropType);
78
96 PropertyKind(COMMON_NS::DataObjectRepository * repo, const std::string & guid, const std::string & title,
97 const std::string & namingSystem, const std::string & nonStandardUom, bool isAbstract, gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind parentEnergisticsPropertyKind);
98
113 PropertyKind(const std::string & guid, const std::string & title,
114 const std::string & namingSystem, const std::string & nonStandardUom, bool isAbstract, EML2_NS::PropertyKind * parentPropType);
115
121 PropertyKind(gsoap_resqml2_0_1::_resqml20__PropertyKind* fromGsoap) :EML2_NS::PropertyKind(fromGsoap) {}
122
124 ~PropertyKind() = default;
125
133 DLL_IMPORT_OR_EXPORT bool isChildOf(gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind standardPropKind) const;
134
140 DLL_IMPORT_OR_EXPORT bool isAbstract() const final;
141
147 DLL_IMPORT_OR_EXPORT bool isParentPartial() const final;
148
154 DLL_IMPORT_OR_EXPORT std::string getBaseUomAsString() const final;
155
161 DLL_IMPORT_OR_EXPORT std::string getParentAsString() const final;
162
171 COMMON_NS::DataObjectReference getParentPropertyKindDor() const final;
172
179 DLL_IMPORT_OR_EXPORT bool isParentAnEnergisticsPropertyKind() const;
180
188 DLL_IMPORT_OR_EXPORT gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind getParentEnergisticsPropertyKind() const;
189
191 void loadTargetRelationships() final;
192
196 DLL_IMPORT_OR_EXPORT static const char* XML_NS;
197
201 DLL_IMPORT_OR_EXPORT std::string getXmlNamespace() const final { return XML_NS; }
202
203 protected:
204
210 void setXmlParentPropertyKind(EML2_NS::PropertyKind* parentPropertyKind);
211
217 gsoap_resqml2_0_1::_resqml20__PropertyKind* getSpecializedGsoapProxy() const;
218
228 friend RESQML2_0_1_NS::PropertyKind* PropertyKindMapper::addResqmlLocalPropertyKindToEpcDocumentFromApplicationPropertyKindName(const std::string & applicationPropertyKindName, const std::string & application);
229
230 private:
231
240 void init(COMMON_NS::DataObjectRepository * repo, const std::string & guid, const std::string & title, const std::string & namingSystem, bool isAbstract);
241 };
242}
Definition PropertyKind.h:28
bool isAbstract() const final
bool isChildOf(gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind standardPropKind) const
PropertyKind(common::DataObjectRepository *repo, const std::string &guid, const std::string &title, const std::string &namingSystem, gsoap_resqml2_0_1::resqml20__ResqmlUom uom, bool isAbstract, gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind parentEnergisticsPropertyKind)
PropertyKind(gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
Definition PropertyKind.h:38
PropertyKind(common::DataObjectRepository *repo, const std::string &guid, const std::string &title, const std::string &namingSystem, const std::string &nonStandardUom, bool isAbstract, gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind parentEnergisticsPropertyKind)
Creates a local property type which uses a non standard uom and which derives from a standard Energis...
PropertyKind(const std::string &guid, const std::string &title, const std::string &namingSystem, const std::string &nonStandardUom, bool isAbstract, eml2::PropertyKind *parentPropType)
Creates a local property type which uses a non standard uom which derives from another local property...
PropertyKind(gsoap_resqml2_0_1::_resqml20__PropertyKind *fromGsoap)
Definition PropertyKind.h:121
PropertyKind(const std::string &guid, const std::string &title, const std::string &namingSystem, gsoap_resqml2_0_1::resqml20__ResqmlUom uom, bool isAbstract, eml2::PropertyKind *parentPropType)
Creates a local property type which uses a standard uom and which derives from another local property...