com.sun.codemodel.JBlock._try()方法的使用及代码示例

x33g5p2x  于2022-01-21 转载在 其他  
字(15.0k)|赞(0)|评价(0)|浏览(103)

本文整理了Java中com.sun.codemodel.JBlock._try()方法的一些代码示例,展示了JBlock._try()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。JBlock._try()方法的具体详情如下:
包路径:com.sun.codemodel.JBlock
类名称:JBlock
方法名:_try

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;
}

相关文章