Difference between revisions of "Accounting Library"

From Gcube Wiki
Jump to: navigation, search
Line 22: Line 22:
 
The library is identified by the following maven coordinates:
 
The library is identified by the following maven coordinates:
  
''<groupId>'''''org.gcube.accounting'''''</groupId>''
+
<nowiki>
''<artifactId>'''''accounting-lib'''''</artifactId>''
+
<groupId>org.gcube.accounting</groupId>
 +
<artifactId>accounting-lib</artifactId>
 +
</nowiki>
  
  
Line 30: Line 32:
 
The current implementation of persistence for this library is for CouchDB storage.
 
The current implementation of persistence for this library is for CouchDB storage.
  
''<groupId>'''''org.gcube.accounting'''''</groupId>''
+
<nowiki>
''<artifactId>'''''accounting-lib-persistence-couchdb'''''</artifactId>''
+
<groupId>org.gcube.accounting</groupId>
 +
<artifactId>accounting-lib-persistence-couchdb</artifactId>
 +
</nowiki>
  
 
   
 
   

Revision as of 18:11, 16 November 2015

This component is responsible of collecting, harmonizing and storing accounting data.

Library

The library has been tough to provide a common way to elaborate Usage Records (URs) (see Accounting Model to check which Usage Records are supported by default). In particular is responsible for:

  • Collecting
  • Aggregating
  • Buffering
  • Storing

Collecting Usage Record

Aggregating Usage Record

Buffering Usage Record

Storing Usage Record

Development

The library is identified by the following maven coordinates:

<groupId>org.gcube.accounting</groupId> <artifactId>accounting-lib</artifactId>


Persistence

The current implementation of persistence for this library is for CouchDB storage.

<groupId>org.gcube.accounting</groupId> <artifactId>accounting-lib-persistence-couchdb</artifactId>


Less dependency is better than more

This library must be available on every node of the infrastructure. To respect as much possible ZERO-DEPENDENCY paradigm of SmartGears a simple couchdb-connector (simple HTTP client library) has been developed.


Deployment