Sha256: 460ef42c7986f95b80d7fcf92e6f9f6f5bec2438ca844f6fdbbd19a41c9efbe6

Contents?: true

Size: 1.97 KB

Versions: 18

Compression:

Stored size: 1.97 KB

Contents

#pragma once

#ifdef __cplusplus

#include "logging/RhoLog.h"
#include "common/RhoThread.h"
#include "common/IRhoClassFactory.h"

#undef DEFAULT_LOGCATEGORY
#define DEFAULT_LOGCATEGORY "RhodesApp"

namespace rho {
namespace common {

class CRhodesAppBase : public common::CRhoThread
{
public:
    DEFINE_LOGCLASS;

protected:

    static CRhodesAppBase* m_pInstance;

    String m_strRhoRootPath, m_strBlobsDirPath, m_strDBDirPath, m_strAppRootPath, m_strRhodesPath;
    String m_strHomeUrl;

    CRhodesAppBase(const String& strRootPath);
public:
    static CRhodesAppBase* Create(const String& strRootPath);
    static void Destroy();
    static CRhodesAppBase* getInstance(){ return m_pInstance; }

    String resolveDBFilesPath(const String& strFilePath);
    String getRelativeDBFilesPath(const String& strFilePath);
    const String& getRhoRootPath(){return m_strRhoRootPath;}
    const String& getRhodesPath(){return m_strRhodesPath;}
    void setRhodesPath(const String& path){m_strRhodesPath = path;}
    const String& getAppRootPath(){return m_strAppRootPath;}
    const String& getBlobsDirPath(){return m_strBlobsDirPath; }
    const String& getDBDirPath(){return m_strDBDirPath; }
    const String& getHomeUrl(){ return m_strHomeUrl; }

    String canonicalizeRhoUrl(const String& strUrl) ;

protected:
    virtual void run(){}

    void initAppUrls();
};

}
}

inline rho::common::CRhodesAppBase& RHODESAPPBASE(){ return *rho::common::CRhodesAppBase::getInstance(); }

#endif //__cplusplus

#ifdef __cplusplus
extern "C" {
#endif //__cplusplus

const char* rho_native_rhopath();
const char* rho_rhodesapp_getplatform();
const char* rho_rhodesapp_getrhodespath();
void rho_file_recursive_createdir(const char* szPath, const char* szBasePath);

int rho_unzip_file(const char* szZipPath);

void rho_free_callbackdata(void* pData);
	
int rho_base64_encode(const char *src, int srclen, char *dst);
int rho_base64_decode(const char *src, int srclen, char *dst);	
	
#ifdef __cplusplus
};
#endif //__cplusplus

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
rhodes-3.0.2 platform/shared/common/RhodesAppBase.h
rhodes-3.0.2.beta.1 platform/shared/common/RhodesAppBase.h
rhodes-3.0.1 platform/shared/common/RhodesAppBase.h
rhodes-3.0.1.beta.8 platform/shared/common/RhodesAppBase.h
rhodes-3.0.1.beta.7 platform/shared/common/RhodesAppBase.h
rhodes-3.0.1.beta.6 platform/shared/common/RhodesAppBase.h
rhodes-3.0.1.beta.5 platform/shared/common/RhodesAppBase.h
rhodes-3.0.1.beta.4 platform/shared/common/RhodesAppBase.h
rhodes-3.0.1.beta.3 platform/shared/common/RhodesAppBase.h
rhodes-3.0.1.beta.2 platform/shared/common/RhodesAppBase.h
rhodes-3.0.0 platform/shared/common/RhodesAppBase.h
rhodes-3.0.0.beta.7 platform/shared/common/RhodesAppBase.h
rhodes-3.0.0.beta.6 platform/shared/common/RhodesAppBase.h
rhodes-3.0.0.beta.5 platform/shared/common/RhodesAppBase.h
rhodes-3.0.0.beta.4 platform/shared/common/RhodesAppBase.h
rhodes-3.0.0.beta.3 platform/shared/common/RhodesAppBase.h
rhodes-3.0.0.beta.2 platform/shared/common/RhodesAppBase.h
rhodes-3.0.0.beta.1 platform/shared/common/RhodesAppBase.h