Skip to content
xcesco edited this page Dec 29, 2020 · 59 revisions

logo

Android Weekly Android Arsenal download maven central test coverage Codacy Badge Project Stats

Kripton provides for Android platform a simple and uniform way to manage the persistence of Java classes through the use of annotations and interfaces in different flavours:

  • as SQLite ORM, implementing DAO pattern
  • as data format converter like JSON, XML, (Java) properties, CBOR, YAML, SMILE
  • as typed Shared Preference
  • as an add-on for Retrofit library to create REST service client.

For the Android platform, all kind of persistence mechanism is supported. For generic Java platform, only data format converter and the Retrofit add-on is available.

Kripton uses the power of annotation processors that allows creating java classes persistence code simply with annotations. There are many other libraries that do this, but Kripton allows to persists java object in different ways with a uniform and coherent set of annotation and mechanism.

Kripton was built to be SIMPLE and FAST. How it is SIMPLE will be shown in this documentation. How it is FAST is showed in Benchmarks, which show that KRIPTON is one (maybe the first) JSON persistence binder for ANDROID!

Performance is gained thanks to annotation processing and Jackson library.

Supported platforms

The official supported platform is Android. You can also use Kripton on generic Java environment but only for data format and retrofit features.

Supported languages

Kripton is written in Java. It can also be used with Kotlin.

Configuration for gradle

For the Android platform, you can work both with Java and Kotlin languages:

Setup in Gradle for Java:

apply plugin: 'com.android.application'

android {
   ...
}

dependencies {
    annotationProcessor "com.abubusoft:kripton-processor:7.0.0"
    implementation "com.abubusoft:kripton:7.0.0"
    ...
}

Setup in Gradle for Kotlin:

apply plugin: 'com.android.application'

apply plugin: 'kotlin-kapt'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

android {
   ...
}

dependencies {
    kapt "com.abubusoft:kripton-processor:7.0.0"
    implementation "com.abubusoft:kripton-android-library:7.0.0"
    ...
}

Table of Contents

Query definition

Features

Relations

Multithread supports

Modularization

Annotations for data convertion

Annotations for SQLite ORM

Annotations for shared preferences

Clone this wiki locally