use of com.arm.mbed.cloud.sdk.testserver.internal.model.APIMethodArgument in project mbed-cloud-sdk-java by ARMmbed.
the class APIMappingGenerator method recordAPIMethod.
private APIMethod recordAPIMethod(Method method) {
if (method == null || !method.isAnnotationPresent(API.class)) {
return null;
}
APIMethod m = new APIMethod(method.getName());
if (method.isAnnotationPresent(Daemon.class)) {
Daemon daemonControl = method.getAnnotation(Daemon.class);
if (daemonControl.start()) {
m.setDaemonControl(DaemonControl.START);
}
if (daemonControl.stop()) {
m.setDaemonControl(DaemonControl.STOP);
}
if (daemonControl.shutdown()) {
m.setDaemonControl(DaemonControl.SHUTDOWN);
}
}
if (method.getParameterCount() > 0) {
Parameter[] parameters = method.getParameters();
for (Parameter parameter : parameters) {
String defaultValue = determineParameterDefaultValue(parameter);
determineContentType(parameter);
APIMethodArgument arg = new APIMethodArgument(parameter.getName(), parameter.getType(), determineContentType(parameter), defaultValue);
m.addArgument(arg);
}
}
APIMethodArgument returnArg = new APIMethodArgument(method.getReturnType(), null);
m.setReturnArgument(returnArg);
return m;
}
Aggregations