Quick links: Tutorial - Examples - Files - Symbols.
Classes: Hierarchy - Index - List - Members.
Namespaces: Index - base - cs - display.

Public Member Functions | List of all members
cogitantcs::Server_TCP Class Reference

Serveur simple qui attend des connexions sur une socket et lit requêtes sur cette socket avant de retourner la réponse par le même moyen. More...

#include "cogitant/cs/ccxx.h"

Inheritance diagram for cogitantcs::Server_TCP:
cogitantcs::Server cogitantcs::Base cogitant::CogitantObject

Public Member Functions

 Server_TCP (unsigned int port=4246)
 Constructeur. More...
 
- Public Member Functions inherited from cogitantcs::Server
 Server (OperationCSIO *opeio)
 Constructeur par défaut. More...
 
virtual ~Server ()
 Destructeur. More...
 
virtual void writeSetContent (cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent, unsigned int set, cogitant::iSet i, cogitant::iSet idest)
 Écrit les caractéristiques d'un élément d'un ensemble dans le document XML. More...
 
bool isValidEnvironment (iEnv idenv, cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent)
 Vérification de la validité d'un identificateur d'environnement. More...
 
bool isValidEnvironmentObject (iEnv idenv, cogitant::iSet idobject, cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent)
 Vérification de la validité d'un identificateur d'EnvironmentObject associé à un identificateur d'environnement. More...
 
bool isValidEnvironmentObjectType (iEnv idenv, cogitant::iSet idobject, cogitant::EnvironmentObject::Type typeobject, cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent)
 Vérification de la présence d'un EnvironmentObject du type passé dans l'environnement choisi. More...
 
iSession sessionNew ()
 Crée une nouvelle session et retourne son numéro. More...
 
cogitant::PropertySetsessionAttributes (iSession i)
 Retourne les attributs d'une session. More...
 
cogitant::PropertySet const * sessionAttributes (iSession i) const
 Retourne les attributs d'une session. More...
 
unsigned int sessionState (iSession i) const
 État d'une session. More...
 
void sessionClose (iSession i)
 Supprime une session. More...
 
bool sessionIsValid (iSession i) const
 L'identificateur de session est-il valide. More...
 
virtual bool runQuery (cogitant::XmlDocument const &query, cogitant::XmlDocument &answer, iSession id, std::list< std::string > &ls)
 Interprétation d'une requête XML. More...
 
virtual void mainLoop ()
 Boucle principale du serveur. More...
 
void stopOnError (bool stop)
 Arrêt du serveur lors d'une lecture erronée. More...
 
std::vector< cogitant::Environment * > & environments ()
 Accès direct aux environnements gérés. More...
 
void detachEnvironment (iEnv i)
 Suppression de la gestion d'un environnement. More...
 
iEnv addEnvironment (cogitant::Environment *e, std::string const &name="")
 Ajout d'un environnement au serveur. More...
 
void clear ()
 Suppression de la gestion de tous les environnements, et destruction de tous les environnements. More...
 
cogitant::Environmentenvironments (iEnv i)
 Accès direct à un environnement par son identificateur. More...
 
void addOperation (OpeServer *op)
 Ajout d'une opération au serveur. More...
 
void addStdOperations ()
 Ajout des opérations standard (fournies avec la bibliothèque) au serveur. More...
 
void addMinOperations ()
 Ajout des opérations minipales au serveur. More...
 
std::vector< cogitant::Environment * > const & environments () const
 Accès direct aux environnements gérés. More...
 
cogitant::Environment const * environments (iEnv i) const
 Accès direct à un environnement par son identificateur. More...
 
iEnv findEnvironment (std::string const &n) const
 Recherche d'un environnement par son nom. More...
 
- Public Member Functions inherited from cogitantcs::Base
 Base (OperationCSIO *opeio=NULL)
 Constructeur par défaut. More...
 
virtual ~Base ()
 Destructeur. More...
 
virtual cogitant::XmlDocument::ElementwriteObject (cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent, std::string const &name, cogitant::CogitantObject const *obj)
 Écrit un objet dans le document XML. More...
 
virtual cogitant::XmlDocument::ElementwriteGraphObject (cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent, cogitant::Graph const *obj, cogitant::iSet idobj, bool writeedges, cogitant::Environment const *env)
 Écrit un objet composant un graphe dans le document XML. More...
 
virtual cogitant::XmlDocument::ElementwriteGraph (cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent, cogitant::Graph const *obj, cogitant::Environment const *env)
 Écrit un graphe dans le document XML. More...
 
virtual cogitant::XmlDocument::ElementwriteRule (cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent, cogitant::Rule const *obj, cogitant::Environment const *env)
 Écrit une règle dans le document XML. More...
 
virtual cogitant::XmlDocument::ElementwriteProjection (cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent, cogitant::Projection const *obj)
 Écrit une projection dans le document XML. More...
 
virtual void writeProperties (cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent, cogitant::PropertySet const *pset, cogitant::iSet subid)
 Écrit les propriétés (d'un sous ensemble de propriétés) de l'objet dans le document XML. More...
 
virtual void writeProperties (cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent, cogitant::CogitantObject const *obj)
 Écrit les propriétés de l'objet dans le document XML. More...
 
virtual void writeAttributes (cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent, cogitant::CogitantObject const *obj)
 Ecrit les attributs spécifiques à l'objet dans le document XML. More...
 
virtual void readAttributes (cogitant::XmlDocument const &doc, cogitant::XmlDocument::Element const *nodeparent, cogitant::CogitantObject *obj)
 Lecture des attributs dans le document XML et affectation à un objet. More...
 
virtual void readProperties (cogitant::XmlDocument const &doc, cogitant::XmlDocument::Element const *nodeparent, cogitant::PropertySet &ps)
 Lecture des propriétés dans le document XML et affectation à un objet. More...
 
virtual cogitant::GraphreadGraph (cogitant::XmlDocument const &doc, cogitant::XmlDocument::Element const *node, cogitant::Environment *env)
 Création du graphe reçu. More...
 
virtual cogitant::RulereadRule (cogitant::XmlDocument const &doc, cogitant::XmlDocument::Element const *node, cogitant::Environment *env)
 Création de la règle reçue. More...
 
virtual cogitant::ProjectionreadProjection (cogitant::XmlDocument const &doc, cogitant::XmlDocument::Element const *node, cogitant::Environment *env, cogitant::Graph const *g, cogitant::Graph const *h)
 Création d'une projetion reçue. More...
 
- Public Member Functions inherited from cogitant::CogitantObject
 CogitantObject ()
 Constructeur. More...
 
 CogitantObject (CogitantObject const &o)
 Constructeur par recopie. More...
 
virtual ~CogitantObject ()
 Destructeur. More...
 
PropertySetproperties ()
 Accès à l'ensemble des propriétés. More...
 
virtual std::string toString () const
 Transformation en chaîne de caractères. More...
 
std::string className () const
 Nom de la classe. More...
 
PropertySet const * properties () const
 Accès en lecture seule à l'ensemble des propriétés. More...
 
bool hasProperties () const
 Existence de propriétés. More...
 
CogitantObjectoperator= (CogitantObject const &ob)
 Affectation. More...
 

Additional Inherited Members

- Public Types inherited from cogitantcs::Server
typedef std::vector< cogitant::Environment * >::size_type iEnv
 Identificateur d'environnement géré par le serveur. More...
 
- Static Public Attributes inherited from cogitantcs::Server
static const iEnv IENV_NULL
 Identificateur incorrect d'environnement. More...
 
- Protected Member Functions inherited from cogitantcs::Server
virtual void runQuery (cogitant::XmlDocument const *query, cogitant::XmlDocument::Element const *qn, cogitant::XmlDocument *answer, cogitant::XmlDocument::Element *anp, std::list< std::string > &ls)
 Interprètation d'une requête (simple) XML. More...
 
bool requiresHeader () const
 Un header spécifique au serveur http doit-il être envoyé. More...
 
cogitant::XmlDocument::ElementwriteObjectExt (cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent, std::string const &name, cogitant::CogitantObject const *obj, cogitant::iSet setvalue, cogitant::iSet idvalue)
 Écriture d'un objet dans le document XML, avec ajout de propriétés "set" et "id". More...
 
- Protected Member Functions inherited from cogitantcs::Base
void useXmlHeader (bool uh)
 Utilisation de l'entête dans les documents XML échangés. More...
 
void addXmlHeader (cogitant::XmlDocument *doc, std::string const &root) const
 Ajout de l'entête au document, si nécessaire. More...
 
void addAttributeNode (cogitant::XmlDocument *doc, cogitant::XmlDocument::Element *nodeparent, std::string const &attname, std::string const &attvalue)
 Ajoute un noeud attribute. More...
 
- Protected Member Functions inherited from cogitant::CogitantObject
virtual PropertySetallocProperties () const
 Fonction créant l'instance d'une sous classe de PropertySet pour la représentation des propriétés de l'objet. More...
 
- Protected Attributes inherited from cogitantcs::Base
bool m_headerxml
 Utilisation de documents XML comportant une entête. More...
 
OperationCSIOm_opeio
 Opération d'entrées sorties. More...
 

Detailed Description

Serveur simple qui attend des connexions sur une socket et lit requêtes sur cette socket avant de retourner la réponse par le même moyen.

See also
cogitantcs::OperationCSIO_TCP.

Constructor & Destructor Documentation

cogitantcs::Server_TCP::Server_TCP ( unsigned int  port = 4246)

Constructeur.

Parameters
portNuméro de port d'attente de connexions.