Commit 21e63fa8 authored by Marco De Marco's avatar Marco De Marco
Browse files

Server class hierarchy added

parent 1246b46a
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -41,6 +41,8 @@

#include <MetadataExporter.h>
#include <MetadataExporterClass.h>
#include <PlainServer.h>
#include <SSLServer.h>

/*----- PROTECTED REGION END -----*/	//	MetadataExporter.cpp

@@ -142,7 +144,12 @@ void MetadataExporter::init_device()

	/*----- PROTECTED REGION ID(MetadataExporter::init_device) ENABLED START -----*/
	
	//	Initialize device
    bool useSSL = true;
    
    if(useSSL)
        m_server_sp = SSLServer::create(this);
    else
        m_server_sp = PlainServer::create(this);        
	
	/*----- PROTECTED REGION END -----*/	//	MetadataExporter::init_device
}
+7 −2
Original line number Diff line number Diff line
@@ -38,6 +38,8 @@
#ifndef MetadataExporter_H
#define MetadataExporter_H

#include <Server.h>

#include <tango.h>


@@ -61,7 +63,10 @@ class MetadataExporter : public TANGO_BASE_CLASS

/*----- PROTECTED REGION ID(MetadataExporter::Data Members) ENABLED START -----*/
    
//	Add your own data members
//------------------------------------------------------------------------------
//  [Private] Class variables
//------------------------------------------------------------------------------    
    Server::SP m_server_sp;

/*----- PROTECTED REGION END -----*/	//	MetadataExporter::Data Members

src/PlainServer.cpp

0 → 100644
+33 −0
Original line number Diff line number Diff line
#include <PlainServer.h>

namespace MetadataExporter_ns
{
    
//==============================================================================
//      PlainServer::PlainServer()
//==============================================================================
PlainServer::PlainServer(Tango::DeviceImpl* deviceImpl_p) : 
    Server::Server(deviceImpl_p)
{
    DEBUG_STREAM << "PlainServer::PlainServer()" << endl;
}

//==============================================================================
//      PlainServer::~PlainServer()
//==============================================================================
PlainServer::~PlainServer()    
{
    DEBUG_STREAM << "PlainServer::~PlainServer()" << endl;
}

//==============================================================================
//      PlainServer::create()
//==============================================================================
Server::SP PlainServer::create(Tango::DeviceImpl* deviceImpl_p)
{
    Server::SP s_sp(new PlainServer(deviceImpl_p), PlainServer::Deleter() );
    
    return s_sp;
}

}   //namespace

src/PlainServer.h

0 → 100644
+37 −0
Original line number Diff line number Diff line
#ifndef PLAINSERVER_H
#define	PLAINSERVER_H

#include <Server.h>

namespace MetadataExporter_ns
{

class PlainServer : public Server
{
//------------------------------------------------------------------------------
//	[Protected] Constructor destructor deleter
//------------------------------------------------------------------------------
    PlainServer(Tango::DeviceImpl*);
    
    virtual ~PlainServer();

    class Deleter;
    friend Deleter;
    class Deleter
    {
	public:
		void operator()(PlainServer* d) { delete d; }        
    };

public:    
//------------------------------------------------------------------------------
//	[Public] Users methods
//------------------------------------------------------------------------------
    static Server::SP create(Tango::DeviceImpl*);
    
};

}   //End of namespace

#endif	/* PLAINSERVER_H */

src/SSLServer.cpp

0 → 100644
+33 −0
Original line number Diff line number Diff line
#include <SSLServer.h>

namespace MetadataExporter_ns
{
    
//==============================================================================
//      SSLServer::SSLServer()
//==============================================================================
SSLServer::SSLServer(Tango::DeviceImpl* deviceImpl_p) : 
    Server::Server(deviceImpl_p)
{
    DEBUG_STREAM << "SSLServer::SSLServer()" << endl;
}

//==============================================================================
//      SSLServer::~SSLServer()
//==============================================================================
SSLServer::~SSLServer()    
{
    DEBUG_STREAM << "SSLServer::~SSLServer()" << endl;
}

//==============================================================================
//      SSLServer::create()
//==============================================================================
Server::SP SSLServer::create(Tango::DeviceImpl* deviceImpl_p)
{
    Server::SP s_sp(new SSLServer(deviceImpl_p), SSLServer::Deleter() );
    
    return s_sp;
}

}   //namespace
Loading