CCAFFEINE
0.8.8
|
00001 #ifndef __COMPONENTRECORD_IMPLH__ 00002 #define __COMPONENTRECORD_IMPLH__ 00003 00004 namespace ccafe { 00005 00009 class ComponentRecord_Impl : public virtual ccafeopq::ComponentClassDescription_Interface { 00010 private: 00011 ccafeopq::ComponentClassDescription_shared ccd; 00012 void * (*create)(); 00013 int inFactory; // if 1, className will be found in ccafe_factory_list. 00014 void setInFactory(int i); 00015 bool foundInPath; 00016 00017 public: 00018 00019 ComponentRecord_Impl(); 00020 virtual ~ComponentRecord_Impl() ; 00021 00022 // char * libraryClassName; // className found with library introspection. 00023 virtual ::std::string getComponentClassName() throw (ccafeopq::Exception ); 00024 00025 00026 // char * componentType; // classic, babel, etc. 00027 virtual ::std::string getCCASpecBinding() throw (ccafeopq::Exception ) ; 00028 00029 // char * indexName; // where we found out about this class. 00030 virtual ::std::string getIndexFile() throw (ccafeopq::Exception ) ; 00031 00032 //char * className; // className defined for user, possibly disambiguated 00033 // or taken from .cca file for library. 00034 virtual ::std::string getDeploymentClassAlias() throw (ccafeopq::Exception ) ; 00035 00036 // char * cFuncName; // constructor function name for className 00037 virtual ::std::string getConstructorName() throw (ccafeopq::Exception ); 00038 00039 // dynamic 00040 virtual ::std::string getLibraryLoading() throw (ccafeopq::Exception); 00041 00042 // char * libraryPath; // .so file name where class+cfunc is found. 00043 virtual ::std::string getLibraryName() throw (ccafeopq::Exception ); 00044 00045 char * buildLocation; // component data, if available. 00046 virtual ::std::string getLibraryLocation() throw (ccafeopq::Exception ); 00047 00048 // dummy 00049 virtual ::std::string getExecScript() throw (ccafeopq::Exception ); 00050 00051 // dummy 00052 virtual void getDOMTree() throw (ccafeopq::Exception ); 00053 00054 bool getInFactory(); 00055 00056 void setCCD( ccafeopq::ComponentClassDescription_shared ccd); 00057 00059 // ConstructorFunc getConstructorFunc(); 00060 void *getConstructorFunc(); 00061 00067 void setConstructorFunc( void * func); 00068 00072 bool getFoundInPath(); 00073 00074 void setFoundInPath(bool tf); 00075 00076 std::string toString(); 00077 00078 }; // end class ComponentRecord_Impl 00079 00080 } // end namespace ccafe 00081 00082 #endif // __COMPONENTRECORD_IMPLH__