1 29 30 package com.caucho.ejb.gen; 31 32 import com.caucho.bytecode.JClass; 33 import com.caucho.bytecode.JMethod; 34 import com.caucho.ejb.cfg.EjbSessionBean; 35 import com.caucho.java.gen.BaseMethod; 36 import com.caucho.java.gen.CallChain; 37 import com.caucho.util.L10N; 38 39 42 public class StatelessAssembler extends SessionAssembler { 43 private static final L10N L = new L10N(StatelessAssembler.class); 44 45 public StatelessAssembler(EjbSessionBean bean, String fullClassName) 46 { 47 super(bean, fullClassName); 48 } 49 50 53 protected void setSuperClass() 54 { 55 _genClass.setSuperClassName("com.caucho.ejb.session.AbstractStatelessContext"); 56 } 57 58 61 public void addHeaderComponent(JClass beanClass, 62 String contextClassName, 63 String implClassName) 64 { 65 _genClass.addComponent(new StatelessBean(beanClass, contextClassName)); 66 } 67 68 71 public ViewClass createHomeView(JClass homeClass, 72 String fullClassName, 73 String viewPrefix) 74 { 75 SessionHomeView homeView = new SessionHomeView(homeClass, 76 fullClassName, 77 viewPrefix, 78 true); 79 80 _genClass.addComponent(homeView); 81 82 return homeView; 83 } 84 85 88 public ViewClass createView(JClass homeClass, 89 String fullClassName, 90 String viewPrefix) 91 { 92 SessionView view = new SessionView(homeClass, 93 fullClassName, 94 viewPrefix, 95 true); 96 97 _genClass.addComponent(view); 98 99 return view; 100 } 101 102 105 public BaseMethod createBusinessMethod(JMethod apiMethod, JMethod implMethod) 106 { 107 BaseMethod method = new BaseMethod(apiMethod, implMethod); 108 109 CallChain call = method.getCall(); 110 111 call = new SessionPoolChain(call); 112 113 method.setCall(call); 114 115 return method; 116 } 117 } 118 | Popular Tags |