Skip to main content

JSON Definition Files for Entity Generation

Example Definition File

JAVA
{
    "protocol": "protocolName",
    "name": "objectName", //Note: This is not used in iOS
    "entity": true, // If true then will add uuid field
    "fields": [
        {
            "name": "fieldName",
            "type": "STRING",
            "primaryKey": true
            "keys": [ "fieldKey" ]
            
        },
        {
            "name": "optionalfieldName",
            "type": "STRING",
            "nullable": true
            "keys": [ "optionalFieldKey", "anotherOptionalFieldKey" ]
            
        },
        { "name": "udcFieldName",
            "type": "UDC",
            "lookupEnabled": true
            "keys": [ "udcFieldKey", ]
            
        }
    ]
}

Item Descriptions

  • Protocol is the name of the base model that must be overridden
  • Name is for the object class implementation you want to generate
  • Entity denotes whether an ObjectBox class should be created for the class and if the annotation is added to the class
  • Fields is an array that contains all the fields that should be instantiated for this class. Each field includes:
    • name: The field name
    • type: One of INTEGER, STRING, DECIMAL, BOOL, URL, LONG, DATE, HASH, ENUM or UDC
    • keys: An array of the keys for the field (can be empty). Note that any primary key field should also have primaryKey : true
    • nullable: A boolean to indicate if the field is nullable or optional
    • Any Dates or Booleans are optional
    • Hash type Password hash are of different types between Android and iOS, therefore a type has been introduced specifically for that. The Hash type will be interpreted as String on Android side and as Int64 in iOS.
    • UDC type Fields with the type UDC can have a lookupEnabled property. If this property is set to true then additional fields will be created. If the lookupEnabled property is not set to true, then the field will simply be a normal String type field. Eg. If setting a field "status" as UDC with lookupEnabled to true, "status", "statusDescription" and "statusDescription2" will be created. 
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.