A platform for high-performance distributed tool and library development written in C++. It can be deployed in two different cluster modes: standalone or distributed. API for v0.5.0, released on June 13, 2018.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
CatalogSetMetadata.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * *
3  * Copyright 2018 Rice University *
4  * *
5  * Licensed under the Apache License, Version 2.0 (the "License"); *
6  * you may not use this file except in compliance with the License. *
7  * 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 /*
19  * CatalogSetMetadata.h
20  *
21  */
22 
23 #ifndef CATALOG_SET_METADATA_H_
24 #define CATALOG_SET_METADATA_H_
25 
26 #include <iostream>
27 #include "Object.h"
28 #include "PDBString.h"
29 #include "PDBVector.h"
30 
31 // PRELOAD %CatalogSetMetadata%
32 
33 using namespace std;
34 
35 namespace pdb {
36 
37 class CatalogSetMetadata : public Object {
38 public:
40 
42  pdb::String pdbSetKeyIn,
43  pdb::String pdbSetNameIn,
44  pdb::String pdbDatabaseIdIn,
45  pdb::String pdbDatabaseNameIn,
46  pdb::String pdbTypeIdIn,
47  pdb::String pdbTypeNameIn)
48  : pdbSetId(pdbSetIdIn),
49  setKey(pdbSetKeyIn),
50  pdbSetName(pdbSetNameIn),
51  pdbDatabaseId(pdbDatabaseIdIn),
52  pdbDatabaseName(pdbDatabaseNameIn),
53  typeId(pdbTypeIdIn),
54  typeName(pdbTypeNameIn) {}
55 
56  CatalogSetMetadata(const CatalogSetMetadata& pdbSetToCopy) {
57  pdbSetId = pdbSetToCopy.pdbSetId;
58  setKey = pdbSetToCopy.setKey;
59  pdbSetName = pdbSetToCopy.pdbSetName;
60  pdbDatabaseId = pdbSetToCopy.pdbDatabaseId;
61  pdbDatabaseName = pdbSetToCopy.pdbDatabaseName;
62  typeId = pdbSetToCopy.typeId;
63  typeName = pdbSetToCopy.typeName;
64  }
65 
67  pdbSetId = pdbSetToCopy->pdbSetId;
68  setKey = pdbSetToCopy->setKey;
69  pdbSetName = pdbSetToCopy->pdbSetName;
70  pdbDatabaseId = pdbSetToCopy->pdbDatabaseId;
71  pdbDatabaseName = pdbSetToCopy->pdbDatabaseName;
72  typeId = pdbSetToCopy->typeId;
73  typeName = pdbSetToCopy->typeName;
74  }
75 
76  void setValues(pdb::String pdbSetIdIn,
77  pdb::String pdbSetKeyIn,
78  pdb::String pdbSetNameIn,
79  pdb::String pdbDatabaseIdIn,
80  pdb::String pdbDatabaseNameIn,
81  pdb::String pdbTypeIdIn,
82  pdb::String pdbTypeNameIn) {
83 
84  pdbSetId = pdbSetIdIn;
85  setKey = pdbSetKeyIn;
86  pdbSetName = pdbSetNameIn;
87  pdbDatabaseId = pdbDatabaseIdIn;
88  pdbDatabaseName = pdbDatabaseNameIn;
89  typeId = pdbTypeIdIn;
90  typeName = pdbTypeNameIn;
91  }
92 
94 
95  // The set ID is used as key for storing metadata
97  return setKey;
98  }
99 
101  return pdbSetId;
102  }
103 
105  return pdbDatabaseId;
106  }
107 
109  return typeId;
110  }
111 
112 
114  return pdbSetName;
115  }
116 
118  return pdbDatabaseName;
119  }
120 
122  return typeName;
123  }
124 
125  void setTypeName(pdb::String& typeNameIn) {
126  typeName = typeNameIn;
127  }
128 
129  void setDBName(pdb::String& pdbDatabaseNameIn) {
130  pdbDatabaseName = pdbDatabaseNameIn;
131  }
132 
133  void setDBId(pdb::String& dbIdIn) {
134  pdbDatabaseId = dbIdIn;
135  }
136 
137  void setTypeId(pdb::String& typeIdIn) {
138  typeId = typeIdIn;
139  }
140 
141  void setItemKey(pdb::String& itemKeyIn) {
142  setKey = itemKeyIn;
143  }
144 
145  void setItemId(pdb::String& itemIdIn) {
146  pdbSetId = itemIdIn;
147  }
148 
149  void setItemName(pdb::String& itemNameIn) {
150  pdbSetName = itemNameIn;
151  }
152 
153  string printShort() {
154  string output;
155  output = " \nSet ";
156  output.append(getItemId())
157  .append(":")
158  .append(getItemKey().c_str())
159  .append(" | in DB ")
160  .append(getDBId())
161  .append(":")
162  .append(getDBName().c_str())
163  .append(" | for type ")
164  .append(getObjectTypeId())
165  .append(":")
166  .append(getObjectTypeName().c_str());
167  return output;
168  }
169 
171 
172 private:
176 
179 
182 };
183 
184 } // namespace
185 
186 #endif /* CATALOG_SET_METADATA_H_ */
#define ENABLE_DEEP_COPY
Definition: DeepCopy.h:52
void setDBId(pdb::String &dbIdIn)
void setItemId(pdb::String &itemIdIn)
CatalogSetMetadata(const CatalogSetMetadata &pdbSetToCopy)
void setItemName(pdb::String &itemNameIn)
void setDBName(pdb::String &pdbDatabaseNameIn)
void setTypeName(pdb::String &typeNameIn)
void setTypeId(pdb::String &typeIdIn)
void setItemKey(pdb::String &itemKeyIn)
CatalogSetMetadata(pdb::String pdbSetIdIn, pdb::String pdbSetKeyIn, pdb::String pdbSetNameIn, pdb::String pdbDatabaseIdIn, pdb::String pdbDatabaseNameIn, pdb::String pdbTypeIdIn, pdb::String pdbTypeNameIn)
void setValues(pdb::String pdbSetIdIn, pdb::String pdbSetKeyIn, pdb::String pdbSetNameIn, pdb::String pdbDatabaseIdIn, pdb::String pdbDatabaseNameIn, pdb::String pdbTypeIdIn, pdb::String pdbTypeNameIn)
CatalogSetMetadata(const Handle< CatalogSetMetadata > &pdbSetToCopy)