use of com.helger.jcodemodel.AbstractJClass in project androidannotations by androidannotations.
the class AbstractRestMethodWithParameterHandler method getRequestEntity.
@Override
protected IJExpression getRequestEntity(ExecutableElement element, RestHolder holder, JBlock methodBody, SortedMap<String, JVar> params) {
JVar httpHeaders = restAnnotationHelper.declareHttpHeaders(element, holder, methodBody);
JVar entitySentToServer = restAnnotationHelper.getEntitySentToServer(element, params);
if (entitySentToServer == null) {
Map<String, String> parameters = restAnnotationHelper.extractFieldAndPartParameters(element);
if (parameters != null) {
AbstractJClass hashMapClass = getJClass(RestSpringClasses.LINKED_MULTI_VALUE_MAP).narrow(String.class, Object.class);
entitySentToServer = methodBody.decl(hashMapClass, "parameters", JExpr._new(hashMapClass));
for (Map.Entry<String, String> parameter : parameters.entrySet()) {
methodBody.add(entitySentToServer.invoke("add").arg(JExpr.lit(parameter.getKey())).arg(params.get(parameter.getValue())));
}
}
}
return restAnnotationHelper.declareHttpEntity(methodBody, entitySentToServer, httpHeaders);
}
use of com.helger.jcodemodel.AbstractJClass in project androidannotations by androidannotations.
the class RoboGuiceHandler method listenerFields.
private void listenerFields(Element element, EActivityHolder holder) {
List<TypeMirror> listenerTypeMirrors = extractListenerTypeMirrors(element);
int i = 1;
for (TypeMirror listenerTypeMirror : listenerTypeMirrors) {
AbstractJClass listenerClass = codeModelHelper.typeMirrorToJClass(listenerTypeMirror);
JFieldVar listener = holder.getGeneratedClass().field(JMod.PRIVATE, listenerClass, "listener" + i + generationSuffix());
codeModelHelper.addSuppressWarnings(listener, "unused");
listener.annotate(getJClass(RoboGuiceClasses.INJECT));
i++;
}
}
use of com.helger.jcodemodel.AbstractJClass in project androidannotations by androidannotations.
the class RoboGuiceHolder method getCurrentConfig.
public JVar getCurrentConfig() {
if (currentConfig == null) {
AbstractJClass configurationClass = environment().getClasses().CONFIGURATION;
JBlock onConfigurationChangedBeforeSuperBlock = holder().getOnConfigurationChangedBeforeSuperBlock();
currentConfig = onConfigurationChangedBeforeSuperBlock.decl(configurationClass, "currentConfig", JExpr.invoke("getResources").invoke("getConfiguration"));
onConfigurationChangedBeforeSuperBlock.bracesRequired(false).indentRequired(false);
}
return currentConfig;
}
use of com.helger.jcodemodel.AbstractJClass in project androidannotations by androidannotations.
the class IntentBuilder method addPutExtraMethod.
private JMethod addPutExtraMethod(Element element, List<IntentExtra> intentExtras) {
String docComment = elementUtils.getDocComment(element);
JMethod method = holder.getIntentBuilderClass().method(PUBLIC, holder.getIntentBuilderClass(), element.getSimpleName().toString());
method.javadoc().addReturn().append("the IntentBuilder to chain calls");
codeModelHelper.addTrimmedDocComment(method, docComment);
int paramCount = intentExtras.size();
for (int i = 0; i < paramCount; i++) {
IntentExtra intentExtra = intentExtras.get(i);
method.javadoc().addParam(intentExtra.parameterName).append("the value for this extra");
AbstractJClass parameterClass = codeModelHelper.typeMirrorToJClass(intentExtra.type);
JVar extraParameterVar = method.param(parameterClass, intentExtra.parameterName);
JInvocation superCall = getSuperPutExtraInvocation(intentExtra.type, extraParameterVar, intentExtra.keyField);
if (i + 1 == paramCount) {
method.body()._return(superCall);
} else {
method.body().add(superCall);
}
}
return method;
}
use of com.helger.jcodemodel.AbstractJClass in project androidannotations by androidannotations.
the class AnnotationArrayParamExtractor method visitEnumConstant.
@Override
public Void visitEnumConstant(VariableElement c, JAnnotationArrayMember p) {
AbstractJClass annotationClass = helper.typeMirrorToJClass(c.asType());
JEnumConstantRef ref = JExpr.enumConstantRef(annotationClass, c.getSimpleName().toString());
p.param(ref);
return null;
}
Aggregations