Skip to content
Snippets Groups Projects
Commit a55fb71b authored by gwen-soleil's avatar gwen-soleil
Browse files

minor

parent 2e8c4066
No related branches found
No related tags found
No related merge requests found
......@@ -23,37 +23,76 @@ Sample code to register an attribute and insert a value:
```java
// build database connection
DatabaseConnectionConfig config = new DatabaseConnectionConfig();
config.setName("tts");
config.setHost("test-postgres-01");
config.setDbType(DatabaseConnectionConfig.DataBaseType.POSTGRESQL);
config.setName("tts");
config.setUser("tts");
config.setPassword("tts");
config.setPort("5432");
config.setConnectionTimeout(10000);
config.setIdleTimeout(10000);
config.setMaxPoolSize(90);
config.
setName("tts");
config.
setHost("test-postgres-01");
config.
setDbType(DatabaseConnectionConfig.DataBaseType.POSTGRESQL);
config.
setName("tts");
config.
setUser("tts");
config.
setPassword("tts");
config.
setPort("5432");
config.
setConnectionTimeout(10000);
config.
setIdleTimeout(10000);
config.
setMaxPoolSize(90);
// start an new attribute in periodic mode
final TangoArchivingInserterService insertService = new TangoArchivingServicesBuilder().buildInserter(config);
InsertionModes insertionModes = new InsertionModes();
insertionModes.setPeriodic(true);
insertionModes.setPeriodPeriodic(124);
insertService.registerAttribute("archiving/source/tangotest.1/double_scalar",insertionModes, "archiving/archiver/1",0);
insertionModes.
setPeriodic(true);
insertionModes.
setPeriodPeriodic(124);
insertService.
registerAttribute("archiving/source/tangotest.1/double_scalar",insertionModes, "archiving/archiver/1",0);
// insert a value
AttributeEvent event = new AttributeEvent();
event.setDataTime(Timestamp.from(Instant.now()));
event.setQuality(1);
event.setFullName("archiving/source/tangotest.1/double_scalar");
event.setValueR(1);
event.setValueR(2);
insertService.insertAttribute(event, AttrDataFormat.SCALAR, false);
event.
setDataTime(Timestamp.from(Instant.now()));
event.
setQuality(1);
event.
setFullName("archiving/source/tangotest.1/double_scalar");
event.
setValueR(1);
event.
setValueR(2);
insertService.
insertAttribute(event, AttrDataFormat.SCALAR, false);
```
### Tango data Fetching
The second service is to fetch data from the database (class fr.soleil.tango.archiving.services.TangoArchivingFetcherService).
The second service is to fetch data from the database (class
fr.soleil.tango.archiving.services.TangoArchivingFetcherService).
Here is a sample code:
```java
......@@ -66,7 +105,8 @@ Here is a sample code:
### Archiving configuration
The third service is for managing archiving configuration (class fr.soleil.tango.archiving.services.TangoArchivingConfigService).
The third service is for managing archiving configuration (class
fr.soleil.tango.archiving.services.TangoArchivingConfigService).
Here is a sample code:
```java
......@@ -82,30 +122,55 @@ archiver)
```java
DatabaseConnectionConfig config = new DatabaseConnectionConfig();
config.setName("tts");
config.setHost("postgres-01");
config.setUser("tts");
config.setPassword("tts");
config.setDbType(DatabaseConnectionConfig.DataBaseType.POSTGRESQL);
config.
setName("tts");
config.
setHost("postgres-01");
config.
setUser("tts");
config.
setPassword("tts");
config.
setDbType(DatabaseConnectionConfig.DataBaseType.POSTGRESQL);
TangoArchiverProperties properties = new TangoArchiverProperties();
properties.setArchiverClassName("TimeseriesArchiver");
properties.
setArchiverClassName("TimeseriesArchiver");
TangoArchivingSystemConfigurationService service = new TangoArchivingSystemConfigurationBuilder().build(config, properties);
service.updateArchiversList();
service.
updateArchiversList();
ArchivingConfigs archivingConfigs = new ArchivingConfigs();
ArchivingConfig config = new ArchivingConfig();
AttributeConfig attributeConfig = new AttributeConfig();
InsertionModes modes = new InsertionModes();
modes.setPeriodic(true);
modes.setPeriodPeriodic(100);
config.setModes(modes);
config.setAttributeConfig(attributeConfig);
archivingConfigs.addConfiguration(config);
modes.
setPeriodic(true);
modes.
setPeriodPeriodic(100);
config.
setModes(modes);
config.
setAttributeConfig(attributeConfig);
archivingConfigs.
addConfiguration(config);
Map<String, ArchivingConfigs> result = service.startArchiving(archivingConfigs);
```
## Forseen evolutions
## Foreseen evolutions
Backport existing Legacy MySQL API to this API
......@@ -39,7 +39,7 @@ import org.jdbi.v3.sqlobject.statement.SqlBatch;
import org.jdbi.v3.sqlobject.statement.SqlUpdate;
import org.jdbi.v3.sqlobject.transaction.Transaction;
public interface AttributeScalarCommands<T> {
public interface AttributeScalarCommands {
//attConfID, dataTime, valueR, valueW, quality, attErrorDescId, details
//insert into att_scalar_devdouble values (9657, '2018-10-19 23:00:12.188', '2.7911841869354248E-002','2.7911841869354248E-002',1,null, null);
@SqlUpdate("insert into <tableName> (att_conf_id, data_time, value_r, value_w, quality, att_error_desc_id, details)" +
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment