You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
common-jaxrs-clients/src/main/java/org/gcube/common/calls/jaxrs/GcubeServiceBuilderDSL.java

49 lines
944 B
Java

package org.gcube.common.calls.jaxrs;
import javax.xml.namespace.QName;
/**
* The clauses of a simple DSL to build {@link GCoreService}.
*
* @author Fabio Simeoni
*
*/
public interface GcubeServiceBuilderDSL {
/**
* The clause that sets the name of the target service.
*
* @author Fabio Simeoni
*
*/
static interface NameClause {
/**
* Sets the qualified name of the target service.
*
* @param name the qualified name of the target service
* @return the next clause
*/
StubClause withName(QName name);
}
/**
* The clause that sets the stub interface of the target service.
*
* @author Fabio Simeoni
*
*/
static interface StubClause {
/**
* Sets the stub interface of the target service.
* @param type the interface
* @return the {@link GCoreService} that described the target service.
*/
GcubeService useRootPath();
GcubeService andPath(String path);
}
}