1 26 27 package org.objectweb.openccm.pss.generator.hibernate.lib; 28 29 31 import org.objectweb.openccm.ast.api.StorageTypeStateMemberDecl; 32 33 import org.objectweb.openccm.generator.java.ast.api.*; 34 import org.objectweb.openccm.generator.java.ast.lib.*; 35 36 import org.objectweb.openccm.generator.translator.idl2java.api.PSDL_JavaTranslator; 37 import org.objectweb.openccm.pss.generator.common.api.PSDL2JavaGenerator; 38 39 40 48 49 public class StorageTypeMapping 50 extends org.objectweb.openccm.pss.generator.common.lib.StorageTypeMapping 51 { 52 53 59 65 68 public StorageTypeMapping() 69 { 70 super(); 71 } 72 73 79 85 protected void 86 addInstanceCallbacks( PSDL2JavaGenerator generator, 87 ClassObject clazz ) 88 { 89 java.util.List to_codec = null, 90 to_ior = null, 91 to_class = null; 92 java.util.Iterator it = null; 93 StorageTypeStateMemberDecl state = null; 94 String mapping_type = null; 95 MethodObject method = null; 96 ParameterObject param = null; 97 PSDL_JavaTranslator translator = null; 98 99 translator = generator.getTranslator(); 100 101 clazz.addImplementedObject("net.sf.hibernate.Lifecycle"); 102 103 to_codec = getStatesToCodec(generator); 105 to_ior = getStatesToIOR(generator); 106 to_class = getStatesToClass(generator); 107 108 method = new MethodObjectImpl(); 110 method.addComment("net.sf.hibernate.Lifecycle onLoad method."); 111 method.setName("onLoad"); 112 method.setReturnType("void"); 113 method.getImpl().setMacro("ST_HIBERNATE_POST_LOAD_METHOD"); 114 method.getImpl().addContextValue("to_codec", to_codec); 115 method.getImpl().addContextValue("to_ior", to_ior); 116 method.getImpl().addContextValue("to_class", to_class); 117 method.getImpl().addContextValue("translator", translator); 118 param = new ParameterObjectImpl(); 119 param.setName("session"); 120 param.setType("net.sf.hibernate.Session"); 121 method.addParameter(param); 122 param = new ParameterObjectImpl(); 123 param.setName("id"); 124 param.setType("java.io.Serializable"); 125 method.addParameter(param); 126 clazz.addMethod(method); 127 128 method = new MethodObjectImpl(); 130 method.addComment("net.sf.hibernate.Lifecycle onSave method."); 131 method.setName("onSave"); 132 method.setReturnType("boolean"); 133 method.getImpl().setMacro("ST_HIBERNATE_PRE_STORE_METHOD"); 134 method.getImpl().addContextValue("to_codec", to_codec); 135 method.getImpl().addContextValue("to_ior", to_ior); 136 method.getImpl().addContextValue("to_class", to_class); 137 method.getImpl().addContextValue("translator", translator); 138 param = new ParameterObjectImpl(); 139 param.setName("session"); 140 param.setType("net.sf.hibernate.Session"); 141 method.addParameter(param); 142 method.addException("net.sf.hibernate.CallbackException"); 143 clazz.addMethod(method); 144 145 method = new MethodObjectImpl(); 147 method.addComment("net.sf.hibernate.Lifecycle onUpdate method."); 148 method.setName("onUpdate"); 149 method.setReturnType("boolean"); 150 method.getImpl().setMacro("ST_HIBERNATE_PRE_UPDATE_METHOD"); 151 method.getImpl().addContextValue("to_codec", to_codec); 152 method.getImpl().addContextValue("to_ior", to_ior); 153 method.getImpl().addContextValue("to_class", to_class); 154 method.getImpl().addContextValue("translator", translator); 155 param = new ParameterObjectImpl(); 156 param.setName("session"); 157 param.setType("net.sf.hibernate.Session"); 158 method.addParameter(param); 159 method.addException("net.sf.hibernate.CallbackException"); 160 clazz.addMethod(method); 161 162 method = new MethodObjectImpl(); 164 method.addComment("net.sf.hibernate.Lifecycle onDelete method."); 165 method.setName("onDelete"); 166 method.setReturnType("boolean"); 167 method.getImpl().setMacro("ST_HIBERNATE_PRE_DELETE_METHOD"); 168 method.getImpl().addContextValue("to_codec", to_codec); 169 method.getImpl().addContextValue("to_ior", to_ior); 170 method.getImpl().addContextValue("to_class", to_class); 171 method.getImpl().addContextValue("translator", translator); 172 param = new ParameterObjectImpl(); 173 param.setName("session"); 174 param.setType("net.sf.hibernate.Session"); 175 method.addParameter(param); 176 method.addException("net.sf.hibernate.CallbackException"); 177 clazz.addMethod(method); 178 179 } 180 181 186 protected String 187 getStorageTypeBaseClass() 188 { 189 return "org.objectweb.openccm.pss.runtime.hibernate.lib.StorageObjectBase"; 190 } 191 192 198 } 199 | Popular Tags |