本文整理了Java中com.sun.codemodel.JBlock._try()
方法的一些代码示例,展示了JBlock._try()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。JBlock._try()
方法的具体详情如下:
包路径:com.sun.codemodel.JBlock
类名称:JBlock
方法名:_try
[英]Create a Try statement and add it to this block
[中]创建Try语句并将其添加到此块
代码示例来源:origin: apache/drill
JTryBlock udfInitTry = sub._try();
udfInitTry.body().assign(
workspaceJVars[0],
代码示例来源:origin: apache/drill
JTryBlock udfEvalTry = sub._try();
udfEvalTry.body().assign(retVal,
workspaceJVars[1].invoke("evaluate").arg(workspaceJVars[3]));
代码示例来源:origin: stackoverflow.com
JClass annotatedType = jcmSource.ref(Class.class);
JInvocation m = annotatedType.staticInvoke("forName");
m.arg(fa.getAnnotated().toString());
JFieldVar field = sourceClass.field(
JMod.PRIVATE | JMod.STATIC, annotatedType, "c");
JBlock staticInit = sourceClass.init();
JTryBlock tb = staticInit._try();
JBlock jbtb = tb.body();
jbtb.assign(field, m);
tb._catch(jcmSource.ref(ClassNotFoundException.class));
代码示例来源:origin: net.anwiba.commons.tools/anwiba-tools-generator-bean
public JMethod createCreateBeanMethod(final JDefinedClass bean) {
final JMethod method = bean.method(JMod.PRIVATE | JMod.STATIC, bean, "_createBean");
final JVar classParameter = method.param(
JMod.FINAL,
_classByNames(java.lang.Class.class.getName(), MessageFormat.format("? extends {0}", bean.name())),
"clazz");
final JBlock methodBody = method.body();
final JConditional ifBlock = methodBody
._if(_classByNames(System.class.getName()).staticInvoke("getSecurityManager").eq(JExpr._null()));
add(bean, classParameter, ifBlock._then()._try());
final JDefinedClass anonymousClass = getCodeModel()
.anonymousClass(_classByNames(PrivilegedAction.class.getName(), bean.name()));
final JMethod anonymousClassMethod = anonymousClass.method(JMod.PUBLIC, bean, "run");
add(bean, classParameter, anonymousClassMethod.body()._try());
methodBody._return(
_classByNames(AccessController.class.getName()).staticInvoke("doPrivileged").arg(JExpr._new(anonymousClass)));
return method;
}
代码示例来源:origin: johncarl81/transfuse
public <T> T wrapException(JBlock block, List<ASTType> throwsTypes, BlockWriter<T> blockWriter) throws JClassAlreadyExistsException {
JTryBlock tryBlock = null;
JBlock writeBlock = block;
if (throwsTypes.size() > 0) {
tryBlock = block._try();
writeBlock = tryBlock.body();
}
T output = blockWriter.write(writeBlock);
if (tryBlock != null) {
for (ASTType throwsType : throwsTypes) {
JCatchBlock catchBlock = tryBlock._catch(generationUtil.ref(throwsType));
JVar exceptionParam = catchBlock.param("e");
catchBlock.body()._throw(JExpr._new(generationUtil.ref(TransfuseInjectionException.class))
.arg(JExpr.lit(throwsType.getName() + " while performing dependency injection"))
.arg(exceptionParam));
}
}
return output;
}
代码示例来源:origin: com.googlecode.androidannotations/androidannotations
private void onStopMethod(JCodeModel codeModel, EBeanHolder holder, JFieldVar scope, JFieldVar eventManager) {
JMethod method = holder.generatedClass.method(JMod.PUBLIC, codeModel.VOID, "onStop");
method.annotate(Override.class);
JBlock body = method.body();
body.invoke(scope, "enter").arg(_this());
JTryBlock tryBlock = body._try();
fireEvent(holder, eventManager, tryBlock.body(), holder.classes().ON_STOP_EVENT);
JBlock finallyBody = tryBlock._finally();
finallyBody.invoke(scope, "exit").arg(_this());
finallyBody.invoke(_super(), method);
}
代码示例来源:origin: com.envoisolutions.sxc/sxc-jaxb
public JFieldVar getDatatypeFactory() {
if (datatypeFactory == null) {
datatypeFactory = jaxbObjectClass.field(JMod.PRIVATE | JMod.FINAL, builderContext.toJClass(DatatypeFactory.class), fieldManager.createId("datatypeFactory"));
// add code to constructor which initializes the static dtFactory field
JTryBlock tryBlock = constructor.body()._try();
tryBlock.body().assign(datatypeFactory, builderContext.toJClass(DatatypeFactory.class).staticInvoke("newInstance"));
JCatchBlock catchBlock = tryBlock._catch((builderContext.toJClass(DatatypeConfigurationException.class)));
catchBlock.body()._throw(JExpr._new(builderContext.toJClass(RuntimeException.class)).arg("Unable to initialize DatatypeFactory").arg(catchBlock.param("e")));
}
return datatypeFactory;
}
代码示例来源:origin: org.metatype.sxc/sxc-jaxb
public JFieldVar getDatatypeFactory() {
if (datatypeFactory == null) {
datatypeFactory = jaxbObjectClass.field(JMod.PRIVATE | JMod.STATIC | JMod.FINAL, builderContext.toJClass(DatatypeFactory.class), fieldManager.createId("datatypeFactory"));
// add code to constructor which initializes the static dtFactory field
JTryBlock tryBlock = jaxbObjectClass.init()._try();
tryBlock.body().assign(datatypeFactory, builderContext.toJClass(DatatypeFactory.class).staticInvoke("newInstance"));
JCatchBlock catchBlock = tryBlock._catch((builderContext.toJClass(DatatypeConfigurationException.class)));
catchBlock.body()._throw(JExpr._new(builderContext.toJClass(RuntimeException.class)).arg("Unable to initialize DatatypeFactory").arg(catchBlock.param("e")));
}
return datatypeFactory;
}
代码示例来源:origin: com.googlecode.androidannotations/androidannotations
private void onDestroyMethod(JCodeModel codeModel, EBeanHolder holder, JFieldVar scope, JFieldVar eventManager) {
JMethod method = holder.generatedClass.method(JMod.PUBLIC, codeModel.VOID, "onDestroy");
method.annotate(Override.class);
JBlock body = method.body();
body.invoke(scope, "enter").arg(_this());
JTryBlock tryBlock = body._try();
fireEvent(holder, eventManager, tryBlock.body(), holder.classes().ON_DESTROY_EVENT);
JBlock finallyBody = tryBlock._finally();
finallyBody.invoke(eventManager, "clear").arg(_this());
finallyBody.invoke(scope, "exit").arg(_this());
finallyBody.invoke(scope, "dispose").arg(_this());
finallyBody.invoke(_super(), method);
}
代码示例来源:origin: com.googlecode.androidannotations/androidannotations
public JDefinedClass createDelegatingAnonymousRunnableClass(EBeanHolder holder, JMethod delegatedMethod) {
JCodeModel codeModel = holder.codeModel();
Classes classes = holder.classes();
JDefinedClass anonymousRunnableClass;
JBlock previousMethodBody = removeBody(delegatedMethod);
anonymousRunnableClass = codeModel.anonymousClass(Runnable.class);
JMethod runMethod = anonymousRunnableClass.method(JMod.PUBLIC, codeModel.VOID, "run");
runMethod.annotate(Override.class);
JBlock runMethodBody = runMethod.body();
JTryBlock runTry = runMethodBody._try();
runTry.body().add(previousMethodBody);
JCatchBlock runCatch = runTry._catch(classes.RUNTIME_EXCEPTION);
JVar exceptionParam = runCatch.param("e");
JInvocation errorInvoke = classes.LOG.staticInvoke("e");
errorInvoke.arg(holder.generatedClass.name());
errorInvoke.arg("A runtime exception was thrown while executing code in a runnable");
errorInvoke.arg(exceptionParam);
runCatch.body().add(errorInvoke);
return anonymousRunnableClass;
}
代码示例来源:origin: org.glassfish.metro/webservices-tools
private void writeAbsWSDLLocation(JDefinedClass cls, JFieldVar urlField, JFieldVar exField) {
JBlock staticBlock = cls.init();
JVar urlVar = staticBlock.decl(cm.ref(URL.class), "url", JExpr._null());
JVar exVar = staticBlock.decl(cm.ref(WebServiceException.class), "e", JExpr._null());
JTryBlock tryBlock = staticBlock._try();
tryBlock.body().assign(urlVar, JExpr._new(cm.ref(URL.class)).arg(wsdlLocation));
JCatchBlock catchBlock = tryBlock._catch(cm.ref(MalformedURLException.class));
catchBlock.param("ex");
catchBlock.body().assign(exVar, JExpr._new(cm.ref(WebServiceException.class)).arg(JExpr.ref("ex")));
staticBlock.assign(urlField, urlVar);
staticBlock.assign(exField, exVar);
}
代码示例来源:origin: com.googlecode.androidannotations/androidannotations
private void onActivityResultMethod(JCodeModel codeModel, EBeanHolder holder, JFieldVar scope, JFieldVar eventManager) {
JMethod method = holder.generatedClass.method(JMod.PUBLIC, codeModel.VOID, "onActivityResult");
method.annotate(Override.class);
JVar requestCode = method.param(codeModel.INT, "requestCode");
JVar resultCode = method.param(codeModel.INT, "resultCode");
JVar data = method.param(holder.classes().INTENT, "data");
JBlock body = method.body();
body.invoke(_super(), method).arg(requestCode).arg(resultCode).arg(data);
body.invoke(scope, "enter").arg(_this());
JTryBlock tryBlock = body._try();
fireEvent(holder, eventManager, tryBlock.body(), holder.classes().ON_ACTIVITY_RESULT_EVENT, requestCode, resultCode, data);
JBlock finallyBody = tryBlock._finally();
finallyBody.invoke(scope, "exit").arg(_this());
}
代码示例来源:origin: javaee/metro-jax-ws
private void writeAbsWSDLLocation(JDefinedClass cls, JFieldVar urlField, JFieldVar exField) {
JBlock staticBlock = cls.init();
JVar urlVar = staticBlock.decl(cm.ref(URL.class), "url", JExpr._null());
JVar exVar = staticBlock.decl(cm.ref(WebServiceException.class), "e", JExpr._null());
JTryBlock tryBlock = staticBlock._try();
tryBlock.body().assign(urlVar, JExpr._new(cm.ref(URL.class)).arg(wsdlLocation));
JCatchBlock catchBlock = tryBlock._catch(cm.ref(MalformedURLException.class));
catchBlock.param("ex");
catchBlock.body().assign(exVar, JExpr._new(cm.ref(WebServiceException.class)).arg(JExpr.ref("ex")));
staticBlock.assign(urlField, urlVar);
staticBlock.assign(exField, exVar);
}
代码示例来源:origin: com.sun.xml.ws/jaxws-tools
private void writeAbsWSDLLocation(JDefinedClass cls, JFieldVar urlField, JFieldVar exField) {
JBlock staticBlock = cls.init();
JVar urlVar = staticBlock.decl(cm.ref(URL.class), "url", JExpr._null());
JVar exVar = staticBlock.decl(cm.ref(WebServiceException.class), "e", JExpr._null());
JTryBlock tryBlock = staticBlock._try();
tryBlock.body().assign(urlVar, JExpr._new(cm.ref(URL.class)).arg(wsdlLocation));
JCatchBlock catchBlock = tryBlock._catch(cm.ref(MalformedURLException.class));
catchBlock.param("ex");
catchBlock.body().assign(exVar, JExpr._new(cm.ref(WebServiceException.class)).arg(JExpr.ref("ex")));
staticBlock.assign(urlField, urlVar);
staticBlock.assign(exField, exVar);
}
代码示例来源:origin: javaee/metro-jax-ws
private void writeAbsWSDLLocation(JDefinedClass cls, JFieldVar urlField, JFieldVar exField) {
JBlock staticBlock = cls.init();
JVar urlVar = staticBlock.decl(cm.ref(URL.class), "url", JExpr._null());
JVar exVar = staticBlock.decl(cm.ref(WebServiceException.class), "e", JExpr._null());
JTryBlock tryBlock = staticBlock._try();
tryBlock.body().assign(urlVar, JExpr._new(cm.ref(URL.class)).arg(wsdlLocation));
JCatchBlock catchBlock = tryBlock._catch(cm.ref(MalformedURLException.class));
catchBlock.param("ex");
catchBlock.body().assign(exVar, JExpr._new(cm.ref(WebServiceException.class)).arg(JExpr.ref("ex")));
staticBlock.assign(urlField, urlVar);
staticBlock.assign(exField, exVar);
}
代码示例来源:origin: javaee/metro-jax-ws
private void writeClassLoaderBaseResourceWSDLLocation(String className, JDefinedClass cls, JFieldVar urlField, JFieldVar exField) {
JBlock staticBlock = cls.init();
JVar exVar = staticBlock.decl(cm.ref(WebServiceException.class), "e", JExpr._null());
JVar urlVar = staticBlock.decl(cm.ref(URL.class), "url", JExpr._null());
JTryBlock tryBlock = staticBlock._try();
tryBlock.body().assign(urlVar, JExpr._new(cm.ref(URL.class)).arg(JExpr.dotclass(cm.ref(className)).invoke("getResource").arg(".")).arg(wsdlLocation));
JCatchBlock catchBlock = tryBlock._catch(cm.ref(MalformedURLException.class));
JVar murlVar = catchBlock.param("murl");
catchBlock.body().assign(exVar, JExpr._new(cm.ref(WebServiceException.class)).arg(murlVar));
staticBlock.assign(urlField, urlVar);
staticBlock.assign(exField, exVar);
}
代码示例来源:origin: com.sun.xml.ws/jaxws-tools
private void writeClassLoaderBaseResourceWSDLLocation(String className, JDefinedClass cls, JFieldVar urlField, JFieldVar exField) {
JBlock staticBlock = cls.init();
JVar exVar = staticBlock.decl(cm.ref(WebServiceException.class), "e", JExpr._null());
JVar urlVar = staticBlock.decl(cm.ref(URL.class), "url", JExpr._null());
JTryBlock tryBlock = staticBlock._try();
tryBlock.body().assign(urlVar, JExpr._new(cm.ref(URL.class)).arg(JExpr.dotclass(cm.ref(className)).invoke("getResource").arg(".")).arg(wsdlLocation));
JCatchBlock catchBlock = tryBlock._catch(cm.ref(MalformedURLException.class));
JVar murlVar = catchBlock.param("murl");
catchBlock.body().assign(exVar, JExpr._new(cm.ref(WebServiceException.class)).arg(murlVar));
staticBlock.assign(urlField, urlVar);
staticBlock.assign(exField, exVar);
}
代码示例来源:origin: org.glassfish.metro/webservices-tools
private void writeClassLoaderBaseResourceWSDLLocation(String className, JDefinedClass cls, JFieldVar urlField, JFieldVar exField) {
JBlock staticBlock = cls.init();
JVar exVar = staticBlock.decl(cm.ref(WebServiceException.class), "e", JExpr._null());
JVar urlVar = staticBlock.decl(cm.ref(URL.class), "url", JExpr._null());
JTryBlock tryBlock = staticBlock._try();
tryBlock.body().assign(urlVar, JExpr._new(cm.ref(URL.class)).arg(JExpr.dotclass(cm.ref(className)).invoke("getResource").arg(".")).arg(wsdlLocation));
JCatchBlock catchBlock = tryBlock._catch(cm.ref(MalformedURLException.class));
JVar murlVar = catchBlock.param("murl");
catchBlock.body().assign(exVar, JExpr._new(cm.ref(WebServiceException.class)).arg(murlVar));
staticBlock.assign(urlField, urlVar);
staticBlock.assign(exField, exVar);
}
代码示例来源:origin: javaee/metro-jax-ws
private void writeClassLoaderBaseResourceWSDLLocation(String className, JDefinedClass cls, JFieldVar urlField, JFieldVar exField) {
JBlock staticBlock = cls.init();
JVar exVar = staticBlock.decl(cm.ref(WebServiceException.class), "e", JExpr._null());
JVar urlVar = staticBlock.decl(cm.ref(URL.class), "url", JExpr._null());
JTryBlock tryBlock = staticBlock._try();
tryBlock.body().assign(urlVar, JExpr._new(cm.ref(URL.class)).arg(JExpr.dotclass(cm.ref(className)).invoke("getResource").arg(".")).arg(wsdlLocation));
JCatchBlock catchBlock = tryBlock._catch(cm.ref(MalformedURLException.class));
JVar murlVar = catchBlock.param("murl");
catchBlock.body().assign(exVar, JExpr._new(cm.ref(WebServiceException.class)).arg(murlVar));
staticBlock.assign(urlField, urlVar);
staticBlock.assign(exField, exVar);
}
代码示例来源:origin: com.envoisolutions.sxc/sxc-jaxb
private <T extends JExpression> T writeAdapterConversion(JAXBObjectBuilder builder, JBlock block, Property property, T propertyVar) {
if (property.getAdapterType() != null) {
JVar adapterVar = builder.getAdapter(property.getAdapterType());
JVar valueVar = block.decl(context.toJClass(property.getComponentAdaptedType()), builder.getWriteVariableManager().createId(property.getName()), JExpr._null());
JTryBlock tryBlock = block._try();
tryBlock.body().assign(valueVar, adapterVar.invoke("marshal").arg(propertyVar));
JCatchBlock catchException = tryBlock._catch(context.toJClass(Exception.class));
JBlock catchBody = catchException.body();
catchBody.invoke(builder.getReadContextVar(), "xmlAdapterError")
.arg(builder.getWriteObject())
.arg(property.getName())
.arg(context.dotclass(property.getAdapterType()))
.arg(context.dotclass(toClass(property.getType()))) // currently we only support conversion between same type
.arg(context.dotclass(toClass(property.getType())))
.arg(catchException.param("e"));
//noinspection unchecked
propertyVar = (T) valueVar;
}
return propertyVar;
}
内容来源于网络,如有侵权,请联系作者删除!