Commit c8310545 authored by Andrea Bignamini's avatar Andrea Bignamini
Browse files

Merge branch 'release/v1.1.0'

- Add remoteSchema and remoteTable
- Add make tar
parents 63a8447c dad5636c
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -3,6 +3,8 @@ EXEC_NAME=metadataImporter-srv
INST_NAME=test
DEBUG_LEV=-v3
INSTALL_DIR=/usr/local/bin
VERSION := `git describe --tags`
TAR_NAME := `basename $(PWD)`
#================================================================================
INC_DIR=/usr/local/omniORB/include \
	   /usr/local/zeromq/include/zmq \
@@ -91,6 +93,10 @@ deepclean:
install:
	-cp $(EXECUTABLE) $(INSTALL_DIR)

.PHONY: tar
tar:
	-tar -czvf $(TAR_NAME)_$(VERSION).tar.gz --transform="s|^.|$(TAR_NAME)_$(VERSION)/|" $(PROTO_DIR) $(SRC_DIR) ./Makefile

.PHONY: echo
echo:
	@echo EXECUTABLE:
+13 −2
Original line number Diff line number Diff line
@@ -21,13 +21,15 @@ private:
	Configuration(std::string certificateFile,
        std::string remoteHost, unsigned int remotePort,
        std::string remoteUsername, std::string remotePassword,
        std::string remoteSchema, std::string remoteTable,
        std::string databaseHost, unsigned int databasePort,
        std::string databaseUsername, std::string databasePassword,
        std::string databaseSchema, std::string databaseTable,
        unsigned int refreshTime, unsigned int timeout) :
        m_certificateFile (certificateFile), m_remoteHost(remoteHost),
        m_remotePort(remotePort), m_remoteUsername(remoteUsername),
        m_remotePassword(remotePassword), m_databaseHost(databaseHost),
        m_remotePassword(remotePassword), m_remoteSchema(remoteSchema),
        m_remoteTable(remoteTable), m_databaseHost(databaseHost),
        m_databasePort(databasePort), m_databaseUsername(databaseUsername),
        m_databasePassword(databasePassword), m_databaseSchema(databaseSchema),
        m_databaseTable(databaseTable), m_refreshTime(refreshTime),
@@ -50,13 +52,14 @@ public:
	static Configuration::SP create(std::string certificateFile,
        std::string remoteHost, unsigned int remotePort,
        std::string remoteUsername, std::string remotePassword,
	std::string remoteSchema, std::string remoteTable,
        std::string databaseHost, unsigned int databasePort,
        std::string databaseUsername, std::string databasePassword,
        std::string databaseSchema, std::string databaseTable,
        unsigned int refreshTime, unsigned int timeout)
	{
		Configuration::SP c_sp(new Configuration(certificateFile, remoteHost,
            remotePort, remoteUsername, remotePassword, databaseHost,
	    remotePort, remoteUsername, remotePassword, remoteSchema, remoteTable, databaseHost,
            databasePort, databaseUsername, databasePassword,
            databaseSchema, databaseTable, refreshTime, timeout),
            Configuration::Deleter());
@@ -72,6 +75,8 @@ public:
	unsigned int getRemotePort() const { return m_remotePort; }
	std::string	getRemoteUsername() const { return m_remoteUsername; }
	std::string	getRemotePassword() const { return m_remotePassword; }
	std::string	getRemoteSchema() const { return m_remoteSchema; }
	std::string	getRemoteTable() const { return m_remoteTable; }
	std::string	getDatabaseHost() const { return m_databaseHost; }
	unsigned int getDatabasePort() const { return m_databasePort; }
	std::string	getDatabaseUsername() const { return m_databaseUsername; }
@@ -100,6 +105,12 @@ private:
    //Metadata exporter remote password
	const std::string	m_remotePassword;

    //Metadata remote database schema
	const std::string	m_remoteSchema;

    //Metadata remote database table
	const std::string	m_remoteTable;

    //Metadata local database host
	const std::string	m_databaseHost;

+35 −3
Original line number Diff line number Diff line
@@ -214,6 +214,8 @@ void MetadataImporter::get_device_property()
	dev_prop.push_back(Tango::DbDatum("RemotePort"));
	dev_prop.push_back(Tango::DbDatum("RemoteUsername"));
	dev_prop.push_back(Tango::DbDatum("RemotePassword"));
	dev_prop.push_back(Tango::DbDatum("RemoteSchema"));
	dev_prop.push_back(Tango::DbDatum("RemoteTable"));
	dev_prop.push_back(Tango::DbDatum("EnableSSL"));
	dev_prop.push_back(Tango::DbDatum("DatabaseHost"));
	dev_prop.push_back(Tango::DbDatum("DatabasePort"));
@@ -293,6 +295,28 @@ void MetadataImporter::get_device_property()
		//	And try to extract RemotePassword value from database
		if (dev_prop[i].is_empty()==false)	dev_prop[i]  >>  remotePassword;

		//	Try to initialize RemoteSchema from class property
		cl_prop = ds_class->get_class_property(dev_prop[++i].name);
		if (cl_prop.is_empty()==false)	cl_prop  >>  remoteSchema;
		else {
			//	Try to initialize RemoteSchema from default device value
			def_prop = ds_class->get_default_device_property(dev_prop[i].name);
			if (def_prop.is_empty()==false)	def_prop  >>  remoteSchema;
		}
		//	And try to extract RemoteSchema value from database
		if (dev_prop[i].is_empty()==false)	dev_prop[i]  >>  remoteSchema;

		//	Try to initialize RemoteTable from class property
		cl_prop = ds_class->get_class_property(dev_prop[++i].name);
		if (cl_prop.is_empty()==false)	cl_prop  >>  remoteTable;
		else {
			//	Try to initialize RemoteTable from default device value
			def_prop = ds_class->get_default_device_property(dev_prop[i].name);
			if (def_prop.is_empty()==false)	def_prop  >>  remoteTable;
		}
		//	And try to extract RemoteTable value from database
		if (dev_prop[i].is_empty()==false)	dev_prop[i]  >>  remoteTable;

		//	Try to initialize EnableSSL from class property
		cl_prop = ds_class->get_class_property(dev_prop[++i].name);
		if (cl_prop.is_empty()==false)	cl_prop  >>  enableSSL;
@@ -421,6 +445,14 @@ void MetadataImporter::get_device_property()
        if(remotePassword.empty())
            throw(invalid_argument("RemotePassword property is empty or not defined"));

	// If remoteSchema is not set, use databaseSchema
        if(remoteSchema.empty())
	  remoteSchema=databaseSchema;

	// If remoteTable is not set, use databaseTable
        if(remoteTable.empty())
	  remoteTable=databaseTable;

        if(enableSSL)
        {
            if(certificateFile.empty())
@@ -454,7 +486,7 @@ void MetadataImporter::get_device_property()
            throw(invalid_argument("Timeout property out of range or not defined"));

        m_configuration_sp = Configuration::create(certificateFile,
            remoteHost, remotePort, remoteUsername, remotePassword, databaseHost,
	   remoteHost, remotePort, remoteUsername, remotePassword, remoteSchema, remoteTable, databaseHost,
           databasePort, databaseUsername, databasePassword, databaseSchema,
           databaseTable, refreshTime, timeout);
    }
+4 −0
Original line number Diff line number Diff line
@@ -100,6 +100,10 @@ public:
	string	remoteUsername;
	//	RemotePassword:	Metadata exporter remote password
	string	remotePassword;
	//	RemoteSchema:	Metadata remote database schema
	string	remoteSchema;
	//	RemoteTable:	Metadata remote database table
	string	remoteTable;
	//	EnableSSL:	Enable or disable SSL connections
	Tango::DevBoolean	enableSSL;
	//	DatabaseHost:	Metadata local database host
+8 −0
Original line number Diff line number Diff line
@@ -29,6 +29,14 @@
      <type xsi:type="pogoDsl:StringType"/>
      <status abstract="false" inherited="false" concrete="true" concreteHere="true"/>
    </deviceProperties>
    <deviceProperties name="RemoteSchema" description="Metadata remote database schema">
      <type xsi:type="pogoDsl:StringType"/>
      <status abstract="false" inherited="false" concrete="true" concreteHere="true"/>
    </deviceProperties>
    <deviceProperties name="RemoteTable" description="Metadata remote database table">
      <type xsi:type="pogoDsl:StringType"/>
      <status abstract="false" inherited="false" concrete="true" concreteHere="true"/>
    </deviceProperties>
    <deviceProperties name="EnableSSL" description="Enable or disable SSL connections">
      <type xsi:type="pogoDsl:BooleanType"/>
      <status abstract="false" inherited="false" concrete="true" concreteHere="true"/>
Loading