FME Server C++ API 3.0
|
00001 #ifndef _IFMESERVERDATASET_H 00002 #define _IFMESERVERDATASET_H 00003 00057 #include <fmeservertypes.h> 00058 #include <ifmeservervector.h> 00059 #include <ifmeserverstatus.h> 00060 00061 class IFMEServerString; 00062 class IFMEServerPropertyAccessor; 00063 00064 class IFMEServerDataset 00065 { 00066 public: 00067 00068 //------------------------------------------------------------------- 00069 // Gets the name of the dataset. 00070 // @return the name of the dataset 00071 virtual void getName(IFMEServerString& name) const = 0; 00072 00073 //------------------------------------------------------------------- 00074 // Gets all the feature types included in this dataset. 00075 // @return a list of all the feature types included in this dataset 00076 // This object retains ownership of the featuretype vector 00077 virtual IFMEServerFeatureTypeVector* getFeatureTypes() const = 0; 00078 00079 //------------------------------------------------------------------- 00080 // Gets the spatial data format of this dataset. 00081 // @return the format of the dataset 00082 virtual void getFormat(IFMEServerString& format) const = 0; 00083 00084 //------------------------------------------------------------------- 00085 // Gets the location of this dataset in the repository. 00086 // @return the location of the file or folder containing this dataset 00087 virtual void getLocation(IFMEServerString& location) const = 0; 00088 00089 //------------------------------------------------------------------- 00090 // Checks whether this dataset is a source or destination dataset. 00091 // @return <code>true</code> if this dataset is used as a source dataset, 00092 // <code>false</code> if it is a destination dataset 00093 virtual FME_Boolean isSource() const = 0; 00094 00095 //------------------------------------------------------------------- 00096 // Gets a property accessor to access dataset properties. 00097 // @return the property accessor 00098 virtual IFMEServerPropertyAccessor* getPropertyAccessor() const = 0; 00099 00100 //------------------------------------------------------------------- 00101 // Updates the property accessor. 00102 // @param propertyAccessor the property accessor. 00103 // @return IFMEServerStatus or NULL if nothing wrong happened. 00104 virtual IFMEServerStatus* updatePropertyAccessor(IFMEServerPropertyAccessor& propertyAccessor) const = 0; 00105 00106 protected: 00107 00108 // ----------------------------------------------------------------------- 00109 // No one should be creating an instance of this directly, so we 00110 // make the constructor protected. 00111 IFMEServerDataset() {} 00112 00113 // ----------------------------------------------------------------------- 00114 // No one should be destroying an instance of this directly, so we 00115 // make the destructor protected. 00116 virtual ~IFMEServerDataset() {} 00117 00118 private: 00119 00120 // ----------------------------------------------------------------------- 00121 // The copy constructor is not implemented. 00122 IFMEServerDataset(const IFMEServerDataset &other); 00123 00124 //--------------------------------------------------------------- 00125 // The assignment operator is not implemented. 00126 IFMEServerDataset &operator=(const IFMEServerDataset &other); 00127 }; 00128 00129 00130 #endif