#pragma once 
 | 
#include "jobject.hpp" 
 | 
  
 | 
#ifdef JARCHOBJECT_EXPORTS 
 | 
#define JOBJECT_API __declspec(dllexport) 
 | 
#else 
 | 
#define JOBJECT_API __declspec(dllimport) 
 | 
#endif 
 | 
  
 | 
class JOBJECT_API JObjectSvr 
 | 
{ 
 | 
public: 
 | 
    JObjectSvr(); 
 | 
    ~JObjectSvr(); 
 | 
public: 
 | 
    static JObjectSvr* get(); 
 | 
public: 
 | 
    template<class Ty> 
 | 
    static Ty* CreateInstance(LPCWSTR pStrObject) 
 | 
    { 
 | 
        return (Ty*)get()->CreateInstance(nullptr,(LPWSTR)pStrObject); 
 | 
    } 
 | 
    JObject* CreateInstance(LPWSTR pStrUri, LPWSTR pStrObject); 
 | 
    void RegisterObjectsByXmlFile(LPWSTR pStrFile); 
 | 
    void RegisterObjectsByObjectMgr(LPWSTR pStrUri, JObjectSvr* pObjectMgr); 
 | 
private: 
 | 
    void* m_pImpl; 
 | 
}; 
 |