FME Server C++ API 3.0

ifmeserverdataset.h

Go to the documentation of this file.
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
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines