2017-12-18 15:37:22 +01:00
|
|
|
package org.gcube.informationsystem.resourceregistry.schema;
|
2017-12-18 15:34:25 +01:00
|
|
|
|
|
|
|
import java.util.List;
|
|
|
|
|
2021-09-08 10:51:17 +02:00
|
|
|
import org.gcube.informationsystem.model.reference.ERElement;
|
2017-12-18 15:34:25 +01:00
|
|
|
import org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException;
|
|
|
|
import org.gcube.informationsystem.resourceregistry.api.exceptions.schema.SchemaException;
|
|
|
|
import org.gcube.informationsystem.resourceregistry.api.exceptions.schema.SchemaNotFoundException;
|
2020-02-03 10:52:50 +01:00
|
|
|
import org.gcube.informationsystem.types.reference.Type;
|
2017-12-18 15:34:25 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @author Luca Frosini (ISTI - CNR)
|
|
|
|
*/
|
|
|
|
public interface ResourceRegistrySchemaClient {
|
|
|
|
|
2021-09-08 10:51:17 +02:00
|
|
|
public <ERElem extends ERElement> Type create(Class<ERElem> clz)
|
2017-12-18 15:34:25 +01:00
|
|
|
throws SchemaException, ResourceRegistryException;
|
|
|
|
|
2020-02-03 10:52:50 +01:00
|
|
|
public String create(String typeDefinitition)
|
2017-12-18 15:34:25 +01:00
|
|
|
throws SchemaException, ResourceRegistryException;
|
|
|
|
|
2021-09-08 10:51:17 +02:00
|
|
|
public <ERElem extends ERElement> List<Type> read(Class<ERElem> clz, Boolean polymorphic)
|
2017-12-18 15:34:25 +01:00
|
|
|
throws SchemaNotFoundException, ResourceRegistryException;
|
|
|
|
|
2020-02-03 10:52:50 +01:00
|
|
|
public String read(String typeName, Boolean polymorphic)
|
2017-12-18 15:34:25 +01:00
|
|
|
throws SchemaNotFoundException, ResourceRegistryException;
|
|
|
|
|
|
|
|
}
|