use of io.apiman.gateway.engine.beans.Api in project apiman by apiman.
the class RateLimitingPolicyTest method createTestContract.
/**
* @return a test contract
*/
private ApiContract createTestContract() {
Api api = new Api();
api.setOrganizationId("ApiOrg");
api.setApiId("Api");
api.setVersion("1.0");
Client app = new Client();
app.setApiKey("12345");
app.setOrganizationId("AppOrg");
app.setClientId("App");
app.setVersion("1.0");
return new ApiContract(api, app, "Gold", null);
}
use of io.apiman.gateway.engine.beans.Api in project apiman by apiman.
the class EBRegistryProxyHandler method listenProxyHandler.
@SuppressWarnings("nls")
default void listenProxyHandler(IAsyncResultHandler<Void> startupHandler) {
log().info("Setting up a listener on: {0}", address());
MessageConsumer<JsonObject> consumer = vertx().eventBus().consumer(address(), (Message<JsonObject> message) -> {
String inboundUuid = message.body().getString("uuid");
log().debug("[{0}] Handling command from inbound UUID: {1} {2}", uuid(), inboundUuid, message);
if (shouldIgnore(inboundUuid))
return;
String type = message.body().getString("type");
String action = message.body().getString("action");
String body = message.body().getString("body");
switch(type) {
case "client":
Client app = Json.decodeValue(body, Client.class);
if (action.equals("register")) {
registerClient(app);
} else if (action.equals("unregister")) {
unregisterClient(app);
}
break;
case "api":
Api api = Json.decodeValue(body, Api.class);
if (action.equals("publish")) {
publishApi(api);
} else if (action.equals("retire")) {
retireApi(api);
}
break;
default:
throw new IllegalStateException("Unknown type: " + type);
}
});
consumer.completionHandler(complete -> {
if (complete.succeeded()) {
startupHandler.handle(AsyncResultImpl.create((Void) null));
} else {
startupHandler.handle(AsyncResultImpl.create(complete.cause()));
}
});
consumer.exceptionHandler(ex -> {
log().error("[{0}] An exception occurred: {1}", uuid(), ex);
ex.printStackTrace();
});
}
use of io.apiman.gateway.engine.beans.Api in project apiman by apiman.
the class PolicyTester method retireApi.
/**
* Retires the API, removing it from the engine.
*/
protected void retireApi() {
Api api = new Api();
api.setOrganizationId(orgId);
api.setApiId(apiId);
api.setVersion(String.valueOf(version));
getEngine().getRegistry().retireApi(api, new IAsyncResultHandler<Void>() {
@Override
public void handle(IAsyncResult<Void> result) {
// This is a good faith effort - we don't really care if it can't be retired.
}
});
}
use of io.apiman.gateway.engine.beans.Api in project apiman by apiman.
the class CachingEsRegistry method getApi.
/**
* @see EsRegistry#getApi(java.lang.String, java.lang.String, java.lang.String, io.apiman.gateway.engine.async.IAsyncResultHandler)
*/
@Override
public void getApi(final String organizationId, final String apiId, final String apiVersion, final IAsyncResultHandler<Api> handler) {
try {
Api api = getApi(organizationId, apiId, apiVersion);
handler.handle(AsyncResultImpl.create(api));
} catch (IOException e) {
handler.handle(AsyncResultImpl.create(e, Api.class));
}
}
use of io.apiman.gateway.engine.beans.Api in project apiman by apiman.
the class EsRegistry method getApi.
/**
* @see io.apiman.gateway.engine.IRegistry#getApi(java.lang.String, java.lang.String, java.lang.String, io.apiman.gateway.engine.async.IAsyncResultHandler)
*/
@Override
public void getApi(String organizationId, String apiId, String apiVersion, IAsyncResultHandler<Api> handler) {
String id = getApiId(organizationId, apiId, apiVersion);
try {
Api api = getApi(id);
handler.handle(AsyncResultImpl.create(api));
} catch (IOException e) {
handler.handle(AsyncResultImpl.create(e, Api.class));
}
}
Aggregations