Fesapi  2.0.0.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
CoreProperty.h
1 /*-----------------------------------------------------------------------
2 Licensed to the Apache Software Foundation (ASF) under one
3 or more contributor license agreements. See the NOTICE file
4 distributed with this work for additional information
5 regarding copyright ownership. The ASF licenses this file
6 to you under the Apache License, Version 2.0 (the
7 "License"; you may not use this file except in compliance
8 with the License. You may obtain a copy of the License at
9 
10  http://www.apache.org/licenses/LICENSE-2.0
11 
12 Unless required by applicable law or agreed to in writing,
13 software distributed under the License is distributed on an
14 "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 KIND, either express or implied. See the License for the
16 specific language governing permissions and limitations
17 under the License.
18 -----------------------------------------------------------------------*/
19 #ifndef CORE_PROPERTY_H
20 #define CORE_PROPERTY_H
21 
22 #include <vector>
23 #include <string>
24 
25 namespace epc
26 {
29  {
30  public:
31 
33  enum TypeProperty {
34  category = 0,
35  contentStatus = 1,
36  created = 2,
37  creator = 3,
38  description = 4,
39  identifier = 5,
40  keywords = 6,
41  language = 7,
42  lastModifiedBy = 8,
43  lastPrinted = 9,
44  modified = 10,
45  revision = 11,
46  subject = 12,
47  title = 13,
48  version = 14,
49  undefinedCoreProperty = 15
50  };
51 
54 
61 
68  CoreProperty(TypeProperty pType, const std::string & pValue);
69 
76  CoreProperty(TypeProperty pType, const std::vector<std::string> & pValue);
78  ~CoreProperty() = default;
79 
85  bool isEmpty() const;
86 
93 
99  void setTypeProperty(TypeProperty corePropertyType);
100 
107  const std::vector<std::string>& getAllValue() const;
108 
118  std::string getValue(size_t index = 0) const;
119 
125  std::string toString() const;
126 
132  void setCategory(std::string pValue);
133 
139  void setContentStatus(std::string pValue);
140 
146  void setCreated(std::string pValue);
147 
153  void setCreator(std::string pValue);
154 
160  void setDescription(std::string pValue);
161 
167  void setIdentifier(std::string pValue);
168 
174  void setKeywords(std::string pValue);
175 
181  void addKeywords(std::string pValue);
182 
188  void setLanguage(std::string pValue);
189 
195  void setLastModifiedBy(std::string pValue);
196 
202  void setLastPrinted(std::string pValue);
203 
209  void setModified(std::string pValue);
210 
216  void setRevision(std::string pValue);
217 
223  void setSubject(std::string pValue);
224 
230  void setTitle(std::string pValue);
231 
237  void setVersion(std::string pValue);
238 
239  private:
241  TypeProperty type;
242 
247  std::vector<std::string> value;
248  };
249 }
250 
251 #endif
Definition: CoreProperty.h:29
void setCreated(std::string pValue)
void setCategory(std::string pValue)
TypeProperty getTypeProperty() const
void setKeywords(std::string pValue)
void setDescription(std::string pValue)
const std::vector< std::string > & getAllValue() const
void setTitle(std::string pValue)
~CoreProperty()=default
TypeProperty
Definition: CoreProperty.h:33
void setCreator(std::string pValue)
void setLastModifiedBy(std::string pValue)
void setLanguage(std::string pValue)
CoreProperty(TypeProperty pType)
void setModified(std::string pValue)
void setContentStatus(std::string pValue)
void setVersion(std::string pValue)
void setLastPrinted(std::string pValue)
void setRevision(std::string pValue)
void setTypeProperty(TypeProperty corePropertyType)
bool isEmpty() const
std::string getValue(size_t index=0) const
void setIdentifier(std::string pValue)
CoreProperty(TypeProperty pType, const std::vector< std::string > &pValue)
void addKeywords(std::string pValue)
std::string toString() const
CoreProperty(TypeProperty pType, const std::string &pValue)
void setSubject(std::string pValue)
The epc namespace.
Definition: ContentType.h:25