#include "stdafx.h" #include "ssalibman.h" #include "ssaini.h" #include "ssalibman_client.h" #include "ssalibman_clientserver.h" SSALibMan* SSALibMan::__inst=NULL; SSALibMan* SSALibMan::getInstClient() { if(__inst==NULL) createInstClient(); return __inst; } SSALibMan* SSALibMan::getInst() { if(__inst==NULL) createInst(); return __inst; } void SSALibMan::createInst() { const char* ssaport = SSAIni::getInst()->getProp(ENV_PORT); if(ssaport!=NULL && strlen(ssaport)>0) { string s(ssaport); int p=s.find(":"); if(p==string::npos) throw "ParametroErrato!"; __inst = new SSALibMan_ClientServer(s.substr(0,p), atoi(s.substr(p+1).c_str() )); } else { createInstClient(); } } void SSALibMan::createInstClient() { __inst = new SSALibMan_Client(); } const char* SSALibMan::DecodificaUltimoErrore() { switch(m_lastError) { case SSA_OK: return "OK"; case SSA_IDCLIENT_ERRATO: return "IdClient errato..."; case SSA_NOTLOADED: return "File di configurazione non caricato..."; case SSA_PROD_NOTFOUND: return "Prodotto non trovato"; case SSA_PROD_MAXUSERS: return "Superato numero utenti massimo prodotto"; case SSA_PROD_PIVA: return "Partita IVA errata"; case SSA_PROD_EXPDATE: return "Superata data scadenza prodotto"; case SSA_MOD_NOTFOUND: return "Modulo non trovato"; case SSA_MOD_MAXUSERS: return "Superato numero utenti massimo modulo"; case SSA_MOD_EXPDATE: return "Superata data scadenza modulo"; case SSA_UTENTE_NON_LOGGATO: return "Utente non loggato"; case SSA_PROBLEMI_CONNESSIONE: return "Impossibile contattare il server delle licenze"; default: return "ERRORE NON CODIFICATO"; } }