#include <URI.h>
Membri pubblici | |
URI (const string &stringified_URI) | |
Crea un nuovo URI partendo da una rappresentazione esterna canonica del tipo utils://<host>:<port>/<service><context>/<server>. Continua... | |
URI (const string &host, const string &port, const string &service, const string &context, const string &name) | |
Crea un nuovo URI da una descrizione esplicita delle sue componenti. Continua... | |
string | port () const |
Restituisce la porta su cui ascolta il NameServer per il servizio richiesto. Continua... | |
string | host () const |
Restituisce l'hostname del server sul quale resiede il NameServer del servizio richiesto. Continua... | |
string | service () const |
Restituisce una string che identifica il tipo del servizio richiesto. Continua... | |
string | context () const |
Restituisce il contesto in cui è registrato il servizio richiesto. Continua... | |
string | name () const |
Restituisce il nome del servizio richiesto. Continua... | |
string | nameServerURL () const |
Restituisce l'URI corbaloc del NameServer presso cui è registrato il servizio. Continua... | |
string | serviceName () const |
Restituisce il nome completamente qualificato del servizio, all'interno del NameServer prescelto. Continua... | |
string | toString () const |
Restituisce una string che rappresenta una rappresentazione esterna "canonica" dell'URI. Continua... | |
bool | isValid () const |
Verifica la validità dell'URI. Continua... |
I metodi forniti da questa classe permetto un facile parsing di un URI del tipo utils:// e la sua conversione negli URI del NameServer (del tipo corbaloc://) e nel nome strutturato del servizio.
client.cc, get.cc, get_prop.cc, get_ts.cc, OMlookup.cc, OMput.cc, OMremove.cc, Proxyget.cc, Proxyput.cc, Proxyremove.cc, put.cc, put_from_peer.cc, remove.cc, e resolv.cc.
Definizione alla linea 41 del file URI.h.
|
Crea un nuovo URI partendo da una rappresentazione esterna canonica del tipo utils://<host>:<port>/<service><context>/<server>. Dove: <host>:<port> è l'indirizzo del NameServer presso il quale è registrato il servizio desiderato <service> indica il tipo di servizio desiderato <context> indica il contesto nel quale è registrato il server <server> indica il nome del server desiderato
Definizione alla linea 30 del file URI.cc. 00030 { 00031 _isValid = false; 00032 00033 string t; 00034 string::size_type l; 00035 00036 if( s.find("fbfs:/") != 0 ) 00037 return; 00038 t = s.substr(6, s.length()-6); 00039 l = t.find("/"); 00040 if( l == string::npos ) 00041 return; 00042 string address = t.substr(0,l); 00043 string service = t.substr(l+1,t.length()-l-1); 00044 l = address.find(":"); 00045 if( l == string::npos ) { 00046 _host = address; 00047 _port = DEFAULT_PORT; 00048 } else { 00049 _host = address.substr(0,l); 00050 _port = address.substr(l+1,address.length()-l-1); 00051 }; 00052 if( _host.length() == 0 ) 00053 _host = DEFAULT_HOST; 00054 l = service.find("@"); 00055 if( l == string::npos ) 00056 return; 00057 _service = service.substr(0,l); 00058 t = service.substr(l+1,service.length()-l-1); 00059 l = t.find("/"); 00060 if( l == string::npos ) 00061 return; 00062 _context = t.substr(0,l); 00063 _name = t.substr(l+1,t.length()-l-1); 00064 _isValid = true; 00065 } |
|
Crea un nuovo URI da una descrizione esplicita delle sue componenti.
Definizione alla linea 72 del file URI.h. 00072 : 00073 _isValid(true), _host(host), _port(port), _service(service), 00074 _context(context), _name(name) {}; |
|
Restituisce il contesto in cui è registrato il servizio richiesto.
Definizione alla linea 98 del file URI.h. 00098 { return _context; } |
|
Restituisce l'hostname del server sul quale resiede il NameServer del servizio richiesto.
Definizione alla linea 86 del file URI.h. 00086 { return _host; } |
|
Verifica la validità dell'URI.
Definizione alla linea 136 del file URI.h. Referenziato da fbfs::NameServerClient::lookup(). 00136 { return _isValid; } |
|
Restituisce il nome del servizio richiesto.
Definizione alla linea 104 del file URI.h. 00104 { return _name; } |
|
Restituisce l'URI corbaloc del NameServer presso cui è registrato il servizio.
Definizione alla linea 67 del file URI.cc. 00067 { 00068 return "corbaloc::" + _host + ":" + _port + "/NameService"; 00069 } |
|
Restituisce la porta su cui ascolta il NameServer per il servizio richiesto.
Definizione alla linea 80 del file URI.h. 00080 { return _port; } |
|
Restituisce una string che identifica il tipo del servizio richiesto.
Definizione alla linea 92 del file URI.h. 00092 { return _service; } |
|
Restituisce il nome completamente qualificato del servizio, all'interno del NameServer prescelto.
Definizione alla linea 71 del file URI.cc. 00071 { 00072 return _context + ".fbfs/" + _name + "." + _service; 00073 } |
|
Restituisce una string che rappresenta una rappresentazione esterna "canonica" dell'URI.
Definizione alla linea 75 del file URI.cc. 00075 { 00076 if(_isValid) 00077 return "fbfs://" + _host + ":" + _port + "/" + _service + "@" + _context + "/" + _name; 00078 else 00079 return ""; 00080 } |