Salome HOME
FileService
[modules/gde.git] / projects / GDE_API_CPP / api / src / File.hpp
diff --git a/projects/GDE_API_CPP/api/src/File.hpp b/projects/GDE_API_CPP/api/src/File.hpp
new file mode 100644 (file)
index 0000000..23b036c
--- /dev/null
@@ -0,0 +1,89 @@
+#ifndef GDE_FILE_HPP
+#define GDE_FILE_HPP
+
+#include <Poco/Timestamp.h>
+
+#include <string>
+
+namespace gde {
+
+  class File {
+    friend class FileService;
+    friend class GDESession;
+
+  public:
+    ~File() {}
+
+    inline int getId() const { return _id; }
+    inline void setId(int id) { this->_id = id; }
+
+    inline std::string getName() const { return _name; }
+    inline void setName(const std::string& name) { this->_name = name; }
+
+    inline int getLength() const { return _length; }
+    inline void setLength(int length) { this->_length = length; }
+
+    inline std::string getChecksum() const { return _checksum; }
+    inline void setChecksum(const std::string& checksum) { this->_checksum = checksum; }
+
+    inline Poco::Timestamp getCreationDate() const { return _creationDate; }
+    inline void setCreationDate(const Poco::Timestamp& creationDate) { this->_creationDate = creationDate; }
+
+    inline Poco::Timestamp getUpdateDate() const { return _updateDate; }
+    inline void setUpdateDate(const Poco::Timestamp& updateDate) { this->_updateDate = updateDate; }
+
+    inline bool getValid() const { return _valid; }
+    inline void setValid(bool valid) { this->_valid = valid; }
+
+    inline bool getDeleted() const { return _deleted; }
+    inline void setDeleted(bool deleted) { this->_deleted = deleted; }
+
+    inline Poco::Timestamp getDeletionDate() const { return _deletionDate; }
+    inline void setDeletionDate(const Poco::Timestamp& deletionDate) { this->_deletionDate = deletionDate; }
+
+    inline int getAttributeGroupId() const { return _attributeGroupId; }
+    inline void setAttributeGroupId(int attributeGroupId) { this->_attributeGroupId = attributeGroupId; }
+
+    inline std::string getData() const { return _data; }
+    inline void setData(const std::string& data) { this->_data = data; }
+
+    inline int getDataProfileId() const { return _dataProfileId; }
+    inline void setDataProfileId(int dataProfileId) { this->_dataProfileId = dataProfileId; }
+
+  private:
+    File(int id=-1,
+         const std::string& name="",
+         int length=-1,
+         const std::string& checksum="",
+         const Poco::Timestamp& creationDate=Poco::Timestamp(),
+         const Poco::Timestamp& updateDate=Poco::Timestamp(),
+         bool valid = false,
+         bool deleted = false,
+         const Poco::Timestamp& deletionDate=Poco::Timestamp(),
+         int attributeGroupId=-1,
+         const std::string& data="",
+         int dataProfileId=-1
+         )
+      : _id(id), _name(name), _length(length), _checksum(checksum), _creationDate(creationDate), _updateDate(updateDate), _valid(valid), _deleted(deleted), _deletionDate(deletionDate), _attributeGroupId(attributeGroupId), _data(data), _dataProfileId(dataProfileId)
+    {}
+    //File(const File&); // non copyable
+    //File& operator=(const File&); // non copyable
+
+  private:
+    int _id;
+    std::string _name;
+    int _length;
+    std::string _checksum;
+    Poco::Timestamp _creationDate;
+    Poco::Timestamp _updateDate;
+    bool _valid;
+    bool _deleted;
+    Poco::Timestamp _deletionDate;
+    int _attributeGroupId;
+    std::string _data;
+    int _dataProfileId;
+  };
+
+};
+
+#endif