Search in sources :

Example 1 with CollectionReferenceParameters

use of io.arlas.server.core.model.CollectionReferenceParameters in project ARLAS-server by gisaia.

the class CollectionReferenceService method getAllIndicesAsCollections.

public List<CollectionReferenceDescription> getAllIndicesAsCollections() throws ArlasException {
    List<CollectionReferenceDescription> collections = new ArrayList<>();
    Map<String, LinkedHashMap> indices = getAllMappingsFromDao(this.arlasIndex);
    for (String indexName : indices.keySet()) {
        CollectionReference collection = new CollectionReference();
        collection.collectionName = indexName;
        collection.params = new CollectionReferenceParameters();
        collection.params.indexName = indexName;
        collections.add(describeCollection(collection));
    }
    return collections;
}
Also used : CollectionReferenceDescription(io.arlas.server.core.model.response.CollectionReferenceDescription) CollectionReferenceParameters(io.arlas.server.core.model.CollectionReferenceParameters) CollectionReference(io.arlas.server.core.model.CollectionReference)

Example 2 with CollectionReferenceParameters

use of io.arlas.server.core.model.CollectionReferenceParameters in project ARLAS-server by gisaia.

the class CollectionTool method load.

public void load(long sleepAfter) throws ArlasException {
    try {
        DataSetTool.loadDataSet();
    } catch (UnknownHostException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    } catch (Exception e) {
        e.printStackTrace();
        throw e;
    }
    CollectionReferenceParameters params = new CollectionReferenceParameters();
    params.indexName = DataSetTool.DATASET_INDEX_NAME;
    params.idPath = DataSetTool.DATASET_ID_PATH;
    params.geometryPath = DataSetTool.WKT_GEOMETRIES ? DataSetTool.DATASET_WKT_GEOMETRY_PATH : DataSetTool.DATASET_GEOMETRY_PATH;
    params.centroidPath = DataSetTool.DATASET_CENTROID_PATH;
    params.h3Path = DataSetTool.DATASET_H3_PATH;
    params.timestampPath = DataSetTool.DATASET_TIMESTAMP_PATH;
    params.excludeFields = DataSetTool.DATASET_EXCLUDE_FIELDS;
    params.excludeWfsFields = DataSetTool.DATASET_EXCLUDE_WFS_FIELDS;
    params.rasterTileURL = DataSetTool.DATASET_TILE_URL;
    params.rasterTileWidth = 256;
    params.rasterTileHeight = 256;
    params.inspire = new Inspire();
    params.inspire.lineage = DataSetTool.DATASET_INSPIRE_LINEAGE;
    params.inspire.topicCategories = Arrays.asList(DataSetTool.DATASET_INSPIRE_TOPIC_CATEGORY);
    params.dublinCoreElementName = new DublinCoreElementName();
    params.dublinCoreElementName.title = DataSetTool.DATASET_DUBLIN_CORE_TITLE;
    params.dublinCoreElementName.description = DataSetTool.DATASET_DUBLIN_CORE_DESCRIPTION;
    params.dublinCoreElementName.language = DataSetTool.DATASET_DUBLIN_CORE_LANGUAGE;
    // PUT new collection
    given().contentType("application/json").body(params).when().put(getUrlPath()).then().statusCode(200);
    Filter filter = new Filter();
    filter.f = Arrays.asList(new MultiValueFilter<>(new Expression("params.job", OperatorEnum.eq, DataSetTool.jobs[0])));
    params.filter = filter;
    given().contentType("application/json").body(params).when().put(arlasPath + "collections/" + COLLECTION_NAME_ACTOR).then().statusCode(200);
    try {
        Thread.sleep(sleepAfter);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
}
Also used : UnknownHostException(java.net.UnknownHostException) Filter(io.arlas.server.core.model.request.Filter) MultiValueFilter(io.arlas.server.core.model.request.MultiValueFilter) Expression(io.arlas.server.core.model.request.Expression) DublinCoreElementName(io.arlas.server.core.model.DublinCoreElementName) MultiValueFilter(io.arlas.server.core.model.request.MultiValueFilter) IOException(java.io.IOException) CollectionReferenceParameters(io.arlas.server.core.model.CollectionReferenceParameters) IOException(java.io.IOException) UnknownHostException(java.net.UnknownHostException) ArlasException(io.arlas.server.core.exceptions.ArlasException) Inspire(io.arlas.server.core.model.Inspire)

Example 3 with CollectionReferenceParameters

use of io.arlas.server.core.model.CollectionReferenceParameters in project ARLAS-server by gisaia.

the class CollectionTool method loadCsw.

public void loadCsw(long sleepAfter) throws IOException {
    try {
        DataSetTool.loadDataSet();
    } catch (UnknownHostException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    } catch (ArlasException e) {
        e.printStackTrace();
    }
    InputStreamReader dcelementForCollection = new InputStreamReader(CollectionTool.class.getClassLoader().getResourceAsStream("csw.collection.dcelements.json"));
    ObjectMapper objectMapper = new ObjectMapper();
    DublinCoreElementName[] dcelements = objectMapper.readValue(dcelementForCollection, DublinCoreElementName[].class);
    Arrays.asList(dcelements).forEach(dublinCoreElementName -> {
        CollectionReferenceParameters params = new CollectionReferenceParameters();
        params.indexName = DataSetTool.DATASET_INDEX_NAME;
        params.idPath = DataSetTool.DATASET_ID_PATH;
        params.geometryPath = DataSetTool.DATASET_GEOMETRY_PATH;
        params.centroidPath = DataSetTool.DATASET_CENTROID_PATH;
        params.timestampPath = DataSetTool.DATASET_TIMESTAMP_PATH;
        params.excludeFields = DataSetTool.DATASET_EXCLUDE_FIELDS;
        params.excludeWfsFields = DataSetTool.DATASET_EXCLUDE_WFS_FIELDS;
        params.rasterTileURL = DataSetTool.DATASET_TILE_URL;
        params.dublinCoreElementName = dublinCoreElementName;
        params.inspire = new Inspire();
        params.inspire.lineage = DataSetTool.DATASET_INSPIRE_LINEAGE;
        params.inspire.topicCategories = Arrays.asList(DataSetTool.DATASET_INSPIRE_TOPIC_CATEGORY);
        String url = arlasPath + "collections/" + dublinCoreElementName.title.split(" ")[0].toLowerCase();
        // PUT new collection
        given().contentType("application/json").body(params).when().put(url).then().statusCode(200);
    });
    try {
        Thread.sleep(sleepAfter);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
}
Also used : ArlasException(io.arlas.server.core.exceptions.ArlasException) UnknownHostException(java.net.UnknownHostException) InputStreamReader(java.io.InputStreamReader) DublinCoreElementName(io.arlas.server.core.model.DublinCoreElementName) IOException(java.io.IOException) CollectionReferenceParameters(io.arlas.server.core.model.CollectionReferenceParameters) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) Inspire(io.arlas.server.core.model.Inspire)

Example 4 with CollectionReferenceParameters

use of io.arlas.server.core.model.CollectionReferenceParameters in project ARLAS-server by gisaia.

the class CollectionInjector method loadCsw.

public void loadCsw(long sleepAfter) throws IOException {
    try {
        getDataInjector(POSTGIS_SINK).loadDataSet();
    } catch (UnknownHostException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    } catch (ArlasException e) {
        e.printStackTrace();
    }
    InputStreamReader dcelementForCollection = new InputStreamReader(CollectionInjector.class.getClassLoader().getResourceAsStream("csw.collection.dcelements.json"));
    ObjectMapper objectMapper = new ObjectMapper();
    DublinCoreElementName[] dcelements = objectMapper.readValue(dcelementForCollection, DublinCoreElementName[].class);
    Arrays.asList(dcelements).forEach(dublinCoreElementName -> {
        CollectionReferenceParameters params = new CollectionReferenceParameters();
        params.indexName = AbstractDataInjector.DATA_SINK_NAME;
        params.idPath = AbstractDataInjector.DATASET_ID_PATH;
        params.geometryPath = AbstractDataInjector.DATASET_GEOMETRY_PATH;
        params.centroidPath = AbstractDataInjector.DATASET_CENTROID_PATH;
        params.h3Path = AbstractDataInjector.DATASET_H3_PATH;
        params.timestampPath = AbstractDataInjector.DATASET_TIMESTAMP_PATH;
        params.excludeFields = AbstractDataInjector.DATASET_EXCLUDE_FIELDS;
        params.excludeWfsFields = AbstractDataInjector.DATASET_EXCLUDE_WFS_FIELDS;
        params.rasterTileURL = AbstractDataInjector.DATASET_TILE_URL;
        params.dublinCoreElementName = dublinCoreElementName;
        params.inspire = new Inspire();
        params.inspire.lineage = AbstractDataInjector.DATASET_INSPIRE_LINEAGE;
        params.inspire.topicCategories = Arrays.asList(AbstractDataInjector.DATASET_INSPIRE_TOPIC_CATEGORY);
        String url = arlasPath + "collections/" + dublinCoreElementName.title.split(" ")[0].toLowerCase();
        // PUT new collection
        given().contentType("application/json").body(params).when().put(url).then().statusCode(200);
    });
    try {
        Thread.sleep(sleepAfter);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
}
Also used : ArlasException(io.arlas.server.core.exceptions.ArlasException) UnknownHostException(java.net.UnknownHostException) InputStreamReader(java.io.InputStreamReader) DublinCoreElementName(io.arlas.server.core.model.DublinCoreElementName) IOException(java.io.IOException) CollectionReferenceParameters(io.arlas.server.core.model.CollectionReferenceParameters) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) Inspire(io.arlas.server.core.model.Inspire)

Example 5 with CollectionReferenceParameters

use of io.arlas.server.core.model.CollectionReferenceParameters in project ARLAS-server by gisaia.

the class CollectionInjector method load.

public void load(long sleepAfter) throws ArlasException {
    try {
        getDataInjector(POSTGIS_SINK).loadDataSet();
    } catch (UnknownHostException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    } catch (Exception e) {
        e.printStackTrace();
        throw e;
    }
    CollectionReferenceParameters params = new CollectionReferenceParameters();
    params.indexName = AbstractDataInjector.DATA_SINK_NAME;
    params.idPath = AbstractDataInjector.DATASET_ID_PATH;
    params.geometryPath = AbstractDataInjector.WKT_GEOMETRIES ? AbstractDataInjector.DATASET_WKT_GEOMETRY_PATH : AbstractDataInjector.DATASET_GEOMETRY_PATH;
    params.centroidPath = AbstractDataInjector.DATASET_CENTROID_PATH;
    params.timestampPath = AbstractDataInjector.DATASET_TIMESTAMP_PATH;
    params.excludeFields = AbstractDataInjector.DATASET_EXCLUDE_FIELDS;
    params.excludeWfsFields = AbstractDataInjector.DATASET_EXCLUDE_WFS_FIELDS;
    params.rasterTileURL = AbstractDataInjector.DATASET_TILE_URL;
    params.rasterTileWidth = 256;
    params.rasterTileHeight = 256;
    params.inspire = new Inspire();
    params.inspire.lineage = AbstractDataInjector.DATASET_INSPIRE_LINEAGE;
    params.inspire.topicCategories = Arrays.asList(AbstractDataInjector.DATASET_INSPIRE_TOPIC_CATEGORY);
    params.dublinCoreElementName = new DublinCoreElementName();
    params.dublinCoreElementName.title = AbstractDataInjector.DATASET_DUBLIN_CORE_TITLE;
    params.dublinCoreElementName.description = AbstractDataInjector.DATASET_DUBLIN_CORE_DESCRIPTION;
    params.dublinCoreElementName.language = AbstractDataInjector.DATASET_DUBLIN_CORE_LANGUAGE;
    // PUT new collection
    given().contentType("application/json").body(params).when().put(getUrlPath()).then().statusCode(200);
    Filter filter = new Filter();
    filter.f = Arrays.asList(new MultiValueFilter<>(new Expression("params.job", OperatorEnum.eq, AbstractDataInjector.jobs[0])));
    params.filter = filter;
    given().contentType("application/json").body(params).when().put(arlasPath + "collections/" + COLLECTION_NAME_ACTOR).then().statusCode(200);
    try {
        Thread.sleep(sleepAfter);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
}
Also used : UnknownHostException(java.net.UnknownHostException) Filter(io.arlas.server.core.model.request.Filter) MultiValueFilter(io.arlas.server.core.model.request.MultiValueFilter) Expression(io.arlas.server.core.model.request.Expression) DublinCoreElementName(io.arlas.server.core.model.DublinCoreElementName) MultiValueFilter(io.arlas.server.core.model.request.MultiValueFilter) IOException(java.io.IOException) CollectionReferenceParameters(io.arlas.server.core.model.CollectionReferenceParameters) IOException(java.io.IOException) UnknownHostException(java.net.UnknownHostException) ArlasException(io.arlas.server.core.exceptions.ArlasException) Inspire(io.arlas.server.core.model.Inspire)

Aggregations

CollectionReferenceParameters (io.arlas.server.core.model.CollectionReferenceParameters)5 ArlasException (io.arlas.server.core.exceptions.ArlasException)4 DublinCoreElementName (io.arlas.server.core.model.DublinCoreElementName)4 Inspire (io.arlas.server.core.model.Inspire)4 IOException (java.io.IOException)4 UnknownHostException (java.net.UnknownHostException)4 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)2 Expression (io.arlas.server.core.model.request.Expression)2 Filter (io.arlas.server.core.model.request.Filter)2 MultiValueFilter (io.arlas.server.core.model.request.MultiValueFilter)2 InputStreamReader (java.io.InputStreamReader)2 CollectionReference (io.arlas.server.core.model.CollectionReference)1 CollectionReferenceDescription (io.arlas.server.core.model.response.CollectionReferenceDescription)1