-
Notifications
You must be signed in to change notification settings - Fork 16
Features
xcesco edited this page Jan 24, 2017
·
30 revisions
##Features##
Kritpon is composed by two runtime-libraries (one for Android plaftorm and one for Java plaftform) and a java annotation processor. Annotation processor generates code which is based on runtime libraries: kripton-android-library
and kripton-library
.
- All primitive types (bool, int, long, float, etc..)
- All simple types (Boolean, String, Byte, Float, Integer, etc..)
- List collections: if you use List interface, an ArrayList will be used.
- Set collections: if you use Set inteface, an HashSet will be used.
- Map collections: if you use Map interface, an HashLinkedMap will be used.
- Array collections
- POJO bean type with @BindType annotation
- Virtually every kind of other type thanks to type adapter you can define and use.
Supported persistence methods are:
- XML (since 1.0.0)
- JSON (since 1.0.0)
- YAML (since 1.5.0)
- CBOR (since 1.5.0)
- (java) properties (since 1.5.0)
- SQLite (since 1.2.0). Implemented with annotation processor in the compile time
- Shared preferences (since 1.2.0). Implemented with annotation processor in the compile time.
Supported platforms:
- Android 4.x+ (since 1.0.0)
- Generic Java 1.7+ platform (since 1.0.0)
###Limits### Kripton is a small and simple library. Some its limitations:
- No cyclic support: it's not possible bind object with cyclic references.
- No complex generic type was tested: for simple and quite complex generic type there should be no problems.
- In SQLite tables need to have a long primary key.
- DAO does not support inner join between table.
- Introduction
- Goals & Features
- Kotlin
- Immutable or Mutable Pojo
- Annotation Processor Args
- Credits
- Articles
- Benchmarks
- Setup
- Tutorial
- Usage
- Dependencies and inspirations
- Stackoverflow
- Documentation
- SQL logging
- Data source options
- Indices
- SQL Type adapter
- Global SQL Type adapter
- Constraints
- Live data: welcome Architectural components!!
- Paged Live data
- Dynamic parts
- Transactional and batch operations
- Async Transactional and batch operations
- Global transaction
- Support for immutable POJO
- Generate Content provider
- Generate Database schema generation
- Database migration
- BindSqlColumn
- BindContentProvider
- BindContentProviderEntry
- BindContentProviderPath
- BindDao
- BindDaoMany2Many
- BindDataSource
- BindDataSourceOptions
- BindDataSourceUpdateTask
- BindIndex
- BindSqlRelation
- BindSqlAdapter
- BindSqlChildSelect
- BindSqlDelete
- BindSqlDynamicOrderBy
- BindSqlDynamicWhere
- BindSqlDynamicWhereParams
- BindSqlInsert
- BindSqlPageSize
- BindSqlParam
- BindSqlSelect
- BindSqlUpdate
- BindSqlType
- BindSqlTransaction