FME Server C++ API 3.0
|
00001 #ifndef _IFMESERVERSERVICE_H 00002 #define _IFMESERVERSERVICE_H 00003 00060 #include <fmeservertypes.h> 00061 #include <ifmeservervector.h> 00062 00063 class IFMEServerString; 00064 class IFMEServerStringArray; 00065 class IFMEServerPropertyAccessor; 00066 class IFMEServerProperty; 00067 class IFMEServerStatus; 00068 00069 //=========================================================================== 00070 // Abstract Interface Class -- all methods are virtual and it has no data 00071 class IFMEServerService 00072 { 00073 public: 00074 00075 //------------------------------------------------------------------- 00078 virtual void getName(IFMEServerString& name) const = 0; 00079 00080 //------------------------------------------------------------------- 00084 virtual void setName(const IFMEServerString& name) = 0; 00085 00086 // ----------------------------------------------------------------------- 00089 virtual void getDisplayName(IFMEServerString& displayName) const = 0; 00090 00091 // ----------------------------------------------------------------------- 00094 virtual void setDisplayName(const IFMEServerString& displayName) = 0; 00095 00096 //------------------------------------------------------------------- 00099 virtual void getDescription(IFMEServerString& description) const = 0; 00100 00101 //------------------------------------------------------------------- 00105 virtual void setDescription(const IFMEServerString& description) = 0; 00106 00107 //------------------------------------------------------------------- 00110 virtual void getURLPattern(IFMEServerString& urlPattern) const = 0; 00111 00112 //------------------------------------------------------------------- 00116 virtual void setURLPattern(const IFMEServerString& urlPattern) = 0; 00117 00118 //------------------------------------------------------------------- 00121 virtual FME_Boolean getIsEnabled() const = 0; 00122 00123 //------------------------------------------------------------------- 00127 virtual void setIsEnabled(const FME_Boolean isEnabled) = 0; 00128 00129 // ----------------------------------------------------------------------- 00133 virtual IFMEServerPropertyAccessor* getPropertyAccessor() const = 0; 00134 00135 // ----------------------------------------------------------------------- 00140 virtual IFMEServerStatus* updatePropertyAccessor(IFMEServerPropertyAccessor& propertyAccessor) const = 0; 00141 00142 //------------------------------------------------------------------- 00145 virtual FME_Boolean getIsWorkspaceRegistrationAllowed() const = 0; 00146 00147 //------------------------------------------------------------------- 00152 virtual void setIsWorkspaceRegistrationAllowed(const FME_Boolean isWorkspaceRegistrationAllowed) = 0; 00153 00154 //------------------------------------------------------------------- 00164 virtual FME_Boolean getIsItemRegistrationAllowed(const FMEServerItemType itemType) const = 0; 00165 00166 //------------------------------------------------------------------- 00176 virtual void setIsItemRegistrationAllowed(const FMEServerItemType itemType, 00177 const FME_Boolean itemRegistrationAllowed) = 0; 00178 00179 //------------------------------------------------------------------- 00190 virtual IFMEServerStatus* isItemRegistered(const IFMEServerString& repositoryName, 00191 const IFMEServerString& itemName, 00192 FME_Boolean& itemRegistered) const = 0; 00193 00194 //------------------------------------------------------------------- 00204 virtual IFMEServerStatus* registerItem(const IFMEServerString& repositoryName, 00205 const IFMEServerString& itemName) = 0; 00206 00207 //------------------------------------------------------------------- 00218 virtual IFMEServerStatus* deregisterItem(const IFMEServerString& repositoryName, 00219 const IFMEServerString& itemName, 00220 FME_Boolean& existed) = 0; 00221 00222 //------------------------------------------------------------------- 00237 virtual IFMEServerStatus* getRegisteredItems( const IFMEServerStringArray* directives, 00238 IFMEServerItemVector& items ) = 0 ; 00239 00240 protected: 00241 00242 // ----------------------------------------------------------------------- 00243 // No one should be creating an instance of this directly, so we 00244 // make the constructor protected. 00245 IFMEServerService() {} 00246 00247 // ----------------------------------------------------------------------- 00248 // No one should be destroying an instance of this directly, so we 00249 // make the destructor protected. 00250 virtual ~IFMEServerService() {} 00251 00252 private: 00253 00254 // ----------------------------------------------------------------------- 00255 // The copy constructor is not implemented. 00256 IFMEServerService(const IFMEServerService &other); 00257 00258 //--------------------------------------------------------------- 00259 // The assignment operator is not implemented. 00260 IFMEServerService &operator=(const IFMEServerService &other); 00261 }; 00262 00263 00264 #endif