create #
Creates a new collection in Kuzzle via the persistence engine, in the provided index
. You can also provide an optional data mapping that allow you to exploit the full capabilities of our persistent data storage layer, ElasticSearch (check here the mapping capabilities of ElasticSearch).
This method will only update the mapping if the collection already exists.
Signature #
void create(String index, String collection) throws io.kuzzle.sdk.BadRequestException, io.kuzzle.sdk.ForbiddenException, io.kuzzle.sdk.GatewayTimeoutException, io.kuzzle.sdk.InternalException, io.kuzzle.sdk.ServiceUnavailableException, io.kuzzle.sdk.PreconditionException
void create(String index, String collection, String mapping) throws io.kuzzle.sdk.BadRequestException, io.kuzzle.sdk.ForbiddenException, io.kuzzle.sdk.GatewayTimeoutException, io.kuzzle.sdk.InternalException, io.kuzzle.sdk.ServiceUnavailableException, io.kuzzle.sdk.PreconditionException;
void create(String index, String collection, String mapping, io.kuzzle.sdk.QueryOptions options) throws io.kuzzle.sdk.BadRequestException, io.kuzzle.sdk.ForbiddenException, io.kuzzle.sdk.GatewayTimeoutException, io.kuzzle.sdk.InternalException, io.kuzzle.sdk.ServiceUnavailableException, io.kuzzle.sdk.PreconditionException;
Arguments #
Arguments | Type | Description | Required |
---|---|---|---|
index | String | Index name | yes |
collection | String | Collection name | yes |
mapping | String | Collection data mapping in JSON format | no |
options | io.kuzzle.sdk.QueryOptions | The query options | no |
mapping #
An string containing the JSON representation of the collection data mapping.
The mapping must have a root field properties
that contain the mapping definition:
{
"properties": {
"field1": { "type": "text" },
"field2": {
"properties": {
"nestedField": { "type": "keyword" }
}
}
}
}
More informations about database mappings here.
options #
Additional query options
Property | Type | Description | Default |
---|---|---|---|
queuable | boolean | Make this request queuable or not | true |
Exceptions #
Throws a io.kuzzle.sdk.KuzzleException
if there is an error. See how to handle error.
Usage #
try {
String mapping = "{\"properties\": {\"license\": {\"type\": \"keyword\"}}}";
kuzzle.getCollection().create("nyc-open-data", "yellow-taxi", mapping);
System.out.println("Success");
} catch (KuzzleException e) {
System.err.println(e.getMessage());
}