Merge branch '112-metadata' into 'master'
Structured metadata. #112 Task #112 involves defining an interface between the sync protocol and its clients. To avoid the need for clients to keep their own databases, which could get out of step with the sync protocol's database, we're giving clients that ability to store metadata in the sync protocol's database. Metadata can be associated with any message, channel, or client. Each metadata object is a simple map from strings to byte arrays. We'll provide a simple query interface to retrieve metadata and/or data by specifying a set of metadata keys. Basically we're building a shitty NoSQL database... erm, I mean, an enterprise-grade key-value store. The basic metadata object is kind of Spartan, so this patch provides an encoder and parser for storing structured metadata. This gives clients an easy way to associate structured data with messages and channels, while leaving them the option of using their own encoding if they prefer. This MR depends on !49. See merge request !50
Showing
- briar-api/src/org/briarproject/api/data/BdfDictionary.java 49 additions, 0 deletionsbriar-api/src/org/briarproject/api/data/BdfDictionary.java
- briar-api/src/org/briarproject/api/data/BdfList.java 49 additions, 0 deletionsbriar-api/src/org/briarproject/api/data/BdfList.java
- briar-api/src/org/briarproject/api/data/BdfReader.java 6 additions, 6 deletionsbriar-api/src/org/briarproject/api/data/BdfReader.java
- briar-api/src/org/briarproject/api/data/BdfReaderFactory.java 8 additions, 0 deletions...r-api/src/org/briarproject/api/data/BdfReaderFactory.java
- briar-api/src/org/briarproject/api/data/BdfWriter.java 4 additions, 4 deletionsbriar-api/src/org/briarproject/api/data/BdfWriter.java
- briar-api/src/org/briarproject/api/data/BdfWriterFactory.java 8 additions, 0 deletions...r-api/src/org/briarproject/api/data/BdfWriterFactory.java
- briar-api/src/org/briarproject/api/data/MetadataEncoder.java 9 additions, 0 deletionsbriar-api/src/org/briarproject/api/data/MetadataEncoder.java
- briar-api/src/org/briarproject/api/data/MetadataParser.java 9 additions, 0 deletionsbriar-api/src/org/briarproject/api/data/MetadataParser.java
- briar-api/src/org/briarproject/api/data/ObjectReader.java 1 addition, 1 deletionbriar-api/src/org/briarproject/api/data/ObjectReader.java
- briar-api/src/org/briarproject/api/db/Metadata.java 11 additions, 0 deletionsbriar-api/src/org/briarproject/api/db/Metadata.java
- briar-core/src/org/briarproject/data/BdfReaderFactoryImpl.java 13 additions, 0 deletions...-core/src/org/briarproject/data/BdfReaderFactoryImpl.java
- briar-core/src/org/briarproject/data/BdfReaderImpl.java 26 additions, 33 deletionsbriar-core/src/org/briarproject/data/BdfReaderImpl.java
- briar-core/src/org/briarproject/data/BdfWriterFactoryImpl.java 13 additions, 0 deletions...-core/src/org/briarproject/data/BdfWriterFactoryImpl.java
- briar-core/src/org/briarproject/data/BdfWriterImpl.java 28 additions, 26 deletionsbriar-core/src/org/briarproject/data/BdfWriterImpl.java
- briar-core/src/org/briarproject/data/DataModule.java 9 additions, 5 deletionsbriar-core/src/org/briarproject/data/DataModule.java
- briar-core/src/org/briarproject/data/MetadataEncoderImpl.java 175 additions, 0 deletions...r-core/src/org/briarproject/data/MetadataEncoderImpl.java
- briar-core/src/org/briarproject/data/MetadataParserImpl.java 165 additions, 0 deletionsbriar-core/src/org/briarproject/data/MetadataParserImpl.java
- briar-core/src/org/briarproject/data/ReaderFactoryImpl.java 0 additions, 13 deletionsbriar-core/src/org/briarproject/data/ReaderFactoryImpl.java
- briar-core/src/org/briarproject/data/Types.java 1 addition, 1 deletionbriar-core/src/org/briarproject/data/Types.java
- briar-core/src/org/briarproject/data/WriterFactoryImpl.java 0 additions, 13 deletionsbriar-core/src/org/briarproject/data/WriterFactoryImpl.java
Loading
Please register or sign in to comment