Sha256: f370863d8effc27da458ccf3ff27e15116c42765e7cdcea4eced1b3b1244c522

Contents?: true

Size: 1.48 KB

Versions: 1

Compression:

Stored size: 1.48 KB

Contents

#pragma once
#ifdef __cplusplus

#include "logging/RhoLog.h"
#include "common/RhoThread.h"
#include "common/ISystemInfo.h"
#include "net/INetRequest.h"
#include "common/IRhoClassFactory.h"

namespace rho{
namespace sync{

class CSyncEngine;

#define WAIT_BEFOREKILL_SECONDS  3
#define POLL_INTERVAL_SECONDS  60
#define POLL_INTERVAL_INFINITE (unsigned int)(-1)
#define DEFAULT_PUSH_PORT 100

class CClientRegister : public common::CRhoThread
{
    DEFINE_LOGCLASS;

	static CClientRegister* m_pInstance;
    common::CAutoPtr<common::ISystemInfo>  m_sysInfo;
	common::CAutoPtr<net::INetRequest>     m_NetRequest;
	String                                 m_strDevicePin;
    unsigned int                           m_nPollInterval;
public:
    static CClientRegister* Create(common::IRhoClassFactory* factory,const char* device_pin);
    static void Destroy();
	static CClientRegister* getInstance() { return m_pInstance; }
	
	virtual void run();	

    const String& getDevicePin(){return m_strDevicePin;}

    String getRegisterBody(const String& strClientID);

    void startUp();
private:
	CClientRegister(common::IRhoClassFactory* factory,const char* device_pin);
    ~CClientRegister();

    boolean doRegister(CSyncEngine& oSync);
    net::INetRequest& getNet(){ return *m_NetRequest; }

};

}
}
#endif //__cplusplus

#ifdef __cplusplus
extern "C" {
#endif //__cplusplus
	
void rho_clientregister_create(const char* szDevicePin);
void rho_clientregister_destroy();

#ifdef __cplusplus
};
#endif //__cplusplus

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rhodes-2.0.3 platform/shared/sync/ClientRegister.h