com.sun.jdo.spi.persistence.support.ejb.ejbc.CMPTemplates.properties Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of payara-embedded-web Show documentation
Show all versions of payara-embedded-web Show documentation
Embedded-Web Distribution of the Payara Project
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
#
# Copyright (c) 1997-2010 Oracle and/or its affiliates. All rights reserved.
#
# The contents of this file are subject to the terms of either the GNU
# General Public License Version 2 only ("GPL") or the Common Development
# and Distribution License("CDDL") (collectively, the "License"). You
# may not use this file except in compliance with the License. You can
# obtain a copy of the License at
# https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
# or packager/legal/LICENSE.txt. See the License for the specific
# language governing permissions and limitations under the License.
#
# When distributing the software, include this License Header Notice in each
# file and include the License file at packager/legal/LICENSE.txt.
#
# GPL Classpath Exception:
# Oracle designates this particular file as subject to the "Classpath"
# exception as provided by Oracle in the GPL Version 2 section of the License
# file that accompanied this code.
#
# Modifications:
# If applicable, add the following below the License Header, with the fields
# enclosed by brackets [] replaced by your own identifying information:
# "Portions Copyright [year] [name of copyright owner]"
#
# Contributor(s):
# If you wish your version of this file to be governed by only the CDDL or
# only the GPL Version 2, indicate your decision by adding "[Contributor]
# elects to include this software in this distribution under the [CDDL or GPL
# Version 2] license." If you don't indicate a single choice of license, a
# recipient has the option to distribute your version of this file under
# either the CDDL, the GPL Version 2 or to extend the choice of license to
# its licensees as provided above. However, if you add GPL Version 2 code
# and therefore, elected the GPL Version 2 license, then the option applies
# only if the new code is made subject to such option by the copyright
# holder.
#
#
# -----------------------------------------------------------------------------
# CMP generic properties
# -----------------------------------------------------------------------------
#
#
# Code Signature via CVS keyword substitution
#
signature = $RCSfile: CMPTemplates.properties,v $ $Revision: 1.3 $
# Concrete impl Class comments.
cmpImplComments=This is the generated concrete CMP bean class to be used with Transparent Persistence runtime.
# packages for bean import statements.
# Important: NO non-jdk, and/or non-j2ee standard classes should be imported
# to avoid name overlap with a user-defined classes.
imports=\
java.util.Collection;\
java.util.ResourceBundle;\
jakarta.ejb.*;
# interfaces to be implemented by the bean.
interfaces=\
jakarta.transaction.Synchronization;\
com.sun.ejb.spi.container.BeanStateSynchronization
#
# Variables:
#
# PLEASE NOTE, all internal variables should start with _jdo
# to avoid name clashes with CMR variables.
#
privateStaticVariables=\
com.sun.jdo.api.persistence.support.PersistenceManagerFactory _jdoPersistenceManagerFactory null\n\
com.sun.jdo.spi.persistence.support.sqlstore.utility.NumericConverter _jdoNumericConverter null
# {0} - PC Class
privateTransientVariables=\
{0} _jdoInstance null\n\
com.sun.jdo.api.persistence.support.PersistenceManager _jdoPersistenceManager null\n\
# {0} - PC Class
# {1} - EJB Name
privateStaticFinalVariables=\
boolean _logUsage Boolean.getBoolean("com.sun.jdo.persistence.support.ejb.ejbc.logLastInstanceUsage")\n\
Class _jdoInstanceClass {0}.class\n\
ResourceBundle _jdoMessages org.glassfish.persistence.common.I18NHelper.loadBundle(\
com.sun.jdo.spi.persistence.support.ejb.ejbc.LogHelperEJBCompiler.class)\n\
String _jdoBeanName \"{1}\"
# {0} - Signatures of the generator classes
# {1} - Signatures of the inputfiles for the codegen
publicStaticFinalVariables=\
String _jdoGeneratorClassesSignature \"{0}\"\n\
String _jdoInputFilesSignature \"{1}\"
# Per finder/selector: private static
# {0} - queryVariableIdentifier
finderSelectorStaticVariables=\
com.sun.jdo.api.persistence.support.Query _jdoQuery_{0} null
# Per finder/selector: private static final
# monitor object is final for faster access and preventing overwritten accidentally
# {0} - queryVariableIdentifier
finderSelectorStaticFinalVariables=\
Object _jdoMonitor_{0} new Object()
otherVariables=\
StringBuilder __state new StringBuilder()\n\
EntityContext _jdoEntityContext null\n
# {0} - variable name
setNull=\
{0} = null;\n
#
# -----------------------------------------------------------------------------
# Generic Methods
# -----------------------------------------------------------------------------
#
# ejbFindByPrimaryKey
ejbFindByPrimaryKey=\
assertPersistenceManagerIsNull();\n\
com.sun.jdo.api.persistence.support.PersistenceManager _jdoPersistenceManager = null;\n\
Object jdoObjectId = jdoGetObjectId(key); \n\
try {\n\
\t_jdoPersistenceManager = jdoGetPersistenceManager0(key);\n\
\tif(_logUsage) __state.append("\\n" + Thread.currentThread() + " IN ejbFindByPrimaryKey - jdoGetPersistenceManager: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
\tObject _jdoInstance = _jdoPersistenceManager.getObjectById(jdoObjectId, true);\n\
\tif (com.sun.jdo.api.persistence.support.JDOHelper.isDeleted(_jdoInstance)) {\n\
\t\tthrow new com.sun.jdo.api.persistence.support.JDOObjectNotFoundException(\n\
\t\t\torg.glassfish.persistence.common.I18NHelper.getMessage(\n\
\t\t\t_jdoMessages, "JDO.instancedeleted_exception", key.toString()));\n\
\t}\n\
} catch (com.sun.jdo.api.persistence.support.JDOObjectNotFoundException ex) {\n\
\tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.handleJDOObjectNotFoundException(\n\
\t\tkey, _jdoBeanName, ex);\n\
} catch (com.sun.jdo.api.persistence.support.JDOException ex) {\n\
\tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logFinderException(\n\
\t\tcom.sun.jdo.spi.persistence.utility.logging.Logger.WARNING, _jdoBeanName, ex);\n\
\tthrow ex;\n\
} finally {\n\
\tjdoReleasePersistenceManager0(_jdoPersistenceManager);\n\
\tif(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN jdoPersistenceManager.close: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
}\n\
return key;
# setEntityContext
setEntityContext=\
super.setEntityContext(param0);\n\
try {\n\
\t_jdoEntityContext = param0;\n\
\tjdoLookupPersistenceManagerFactory(param0);\n\
} catch (com.sun.jdo.api.persistence.support.JDOException ex) {\n\
\tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithLifecycleLogger(\n\
\t\t"GEN.generic_method_exception", _jdoBeanName, ex);\n\
\tthrow ex;\n\
}
unsetEntityContext=\
super.unsetEntityContext();\n\
_jdoEntityContext = null;\n\
ejbPassivate=\
super.ejbPassivate();\n\
jdoCleanAllRefs();
# {0} - PK Class.
# {1} - PC Class.
jdoGetInstance=\
if(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN jdoGetInstance: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
{0} key = ({0}) _jdoEntityContext.getPrimaryKey();\n\
Object jdoObjectId = jdoGetObjectId(key); \n\
_jdoInstance = ({1}) _jdoPersistenceManager.getObjectById(jdoObjectId, true);\n\
if(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN jdoGetInstance: " + this + ":: " + _jdoInstance);\n\
if (com.sun.jdo.api.persistence.support.JDOHelper.isDeleted(_jdoInstance)) '{'\n\
\tthrow new com.sun.jdo.api.persistence.support.JDOObjectNotFoundException(\n\
\t\torg.glassfish.persistence.common.I18NHelper.getMessage(_jdoMessages, \n\
\t\t"JDO.instancedeleted_exception", key.toString()));\n\
'}'\n\
# {0} - Concrete Impl class name.
jdoGetObjectId=\
return {0}_JDOHelper.getHelperInstance().convertPrimaryKeyToObjectId(key);
jdoGetPersistenceManager=\
if(_jdoPersistenceManagerFactory == null) {\n\
\tthrow new com.sun.jdo.api.persistence.support.JDOFatalInternalException(\n\
\t\torg.glassfish.persistence.common.I18NHelper.getMessage(\n\
\t\t\t_jdoMessages, "JDO.pmfnull_exception"));\n\
}\n\
return _jdoPersistenceManagerFactory.getPersistenceManager();\n\
jdoClosePersistenceManager=\
if (_jdoPersistenceManager != null) {\n\
\t_jdoPersistenceManager.close();\n\
\tjdoCleanAllRefs(); // This nullifies all references.\n\
\tif(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN jdoClosePersistenceManager: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
}
jdoReleasePersistenceManager0=\
jdoReleasePersistenceManager(param0);
jdoReleasePersistenceManager=\
if (param0 != null) {\n\
\tparam0.close();\n\
}
jdoGetPersistenceManager0=\
return jdoGetPersistenceManager();
# {0} - Concrete Impl class name.
jdoLookupPersistenceManagerFactory=\
if (_jdoPersistenceManagerFactory == null) '{'\n\
\t_jdoPersistenceManagerFactory = com.sun.jdo.spi.persistence.support.sqlstore.ejb.CMPHelper.getPersistenceManagerFactory(\n\
\t\t{0}_JDOHelper.getHelperInstance().getContainer());\n\
\t_jdoPersistenceManagerFactory.setRequireCopyObjectId(false);\n\
\t_jdoPersistenceManagerFactory.setRequireTrackedSCO(false);\n\
\t_jdoNumericConverter = {0}_JDOHelper.getHelperInstance().getNumericConverter();\n\
'}'
# {0} - Exception message.
assertInTransaction=\
if (_jdoPersistenceManager != null && \n\
\t!_jdoPersistenceManager.currentTransaction().isActive()) '{'\n\
\t\tthrow new EJBException(\"{0}\");\n\
'}'
# This template must have a new line at the end
# to be displayed properly in the generated code.
assertPersistenceManagerIsNull=\
try { \n\
\tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.assertPersistenceManagerIsNull(_jdoPersistenceManager, this, __state);\n\
} finally {\n\
\tif(_logUsage)__state = new StringBuilder();\n\
}
assertPersistenceManagerIsNullCall=\
assertPersistenceManagerIsNull();
# void no-args methods.
commonPublicMethods=\
unsetEntityContext;\
ejbPassivate;\
ejbRemove;\
beforeCompletion;\
ejb__flush;
commonPrivateMethods=\
# Other methods that differ for CMP2.0 and CMP1.1.
otherPublicMethods=\
ejbLoad;\
ejbStore;\
jdoCleanAllRefs
# Method returning an array.
#{0} array type.
jdoArrayCopy=\
if (param0 == null) \n\
\treturn null;\n\
{0}[] tmp = new {0}[param0.length];\n\
System.arraycopy(param0, 0, tmp, 0, param0.length);\n\
return tmp;
# Getter method to access the jdoInstanceClass property
jdoGetJdoInstanceClass = \
return _jdoInstanceClass;
# Methods for post-transaction cleanup
beforeCompletion=\
if(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN beforeCompletion: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());
afterCompletion=\
if(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN afterCompletion start: " + this + ":: " + _jdoPersistenceManager);\n\
jdoCleanAllRefs();\n\
if(_logUsage) {\n\
\tif (param0 == 4) \n\
\t\t__state.append("\\n" + Thread.currentThread() + " IN afterCompletion rollback: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
\telse \n\
\t\t__state.append("\\n" + Thread.currentThread() + " IN afterCompletion commit: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
}
# Bean synchronization methods
ejb__flush=\
com.sun.jdo.api.persistence.support.PersistenceManager _jdoPersistenceManager = null;\n\
try {\n\
\t_jdoPersistenceManager = jdoGetPersistenceManager();\n\
\tcom.sun.jdo.spi.persistence.support.sqlstore.ejb.CMPHelper.flush(_jdoPersistenceManager);\n\
} finally {\n\
\tjdoReleasePersistenceManager(_jdoPersistenceManager);\n\
}
ejb__refresh=\
ejb__remove=\
#
# -----------------------------------------------------------------------------
# _JDOHelper templates
# -----------------------------------------------------------------------------
#
# Helper Class comments.
# {0} concrete impl name.
helperComments=This is the generated helper class for {0} to be used with Transparent Persistence runtime.
# packages for helper class import statements.
# Important: NO non-jdk, and/or non-j2ee standard classes should be imported
# to avoid name overlap with a user-defined classes.
helperImports=\
jakarta.ejb.*;
#
# Static variables.
#
# {0} - Concrete Impl name.
# {1} - EJB Name.
# {2} - Application Name.
helperVariables=\
{0}_JDOHelper instance new {0}_JDOHelper()\n\
String _jdoBeanName \"{1}\"\n\
Object container com.sun.jdo.spi.persistence.support.sqlstore.ejb.CMPHelper.getContainer(new Object[]'{'\"{2}\", \"{1}\"'}')
#
# Methods.
#
# Static method. All other methods are instance methods.
getHelperInstance=\
return instance;
#
# Templates for PK/Oid conversions:
#
# {0} - PK Class.
castKey=\
{0} key = ({0})param0;\n
# {0} - PK Class.
newPK=\
{0} key = new {0}();\n
# {0} - PC Class.
castOid=\
{0}.Oid jdoObjectId = ({0}.Oid)param0;\n
# {0} - PC Class.
newOid=\
{0}.Oid jdoObjectId = new {0}.Oid();\n
# Generated convertPrimaryKeyToObjectId() for a PK class
# that is a single field of Object type
# {0} - PK field.
getOid1=\
jdoObjectId.{0} = key;\n
# Generated convertPrimaryKeyToObjectId() for a String PK class
# that is a single field of Object type
# {0} - PK field.
getOid1String=\
jdoObjectId.{0} = key.trim();\n
# Generated convertPrimaryKeyToObjectId() for a mutable PK class
# that is a single field of Object type
# {0} - PK field.
# {1} - PK type.
getOid1Clone=\
jdoObjectId.{0} = ({1})key.clone();\n
# Generated convertPrimaryKeyToObjectId() for a PK class that
# is a single field of primitive type
# {0} - PK field.
# {1} - PK field type.
getOid1primitive=\
jdoObjectId.{0} = key.{1}Value();\n
# Generated convertPrimaryKeyToObjectId() for a PK class that has several fields.
# {0} - PK field.
getOid=\
jdoObjectId.{0} = key.{0};\n
# Generated convertPrimaryKeyToObjectId() for a String PK field
# for PK class that has several fields.
# {0} - PK field.
getOidString=\
jdoObjectId.{0} = key.{0}.trim();\n
# Generated convertPrimaryKeyToObjectId() for a mutable PK field
# for PK class that has several fields.
# {0} - PK field.
# {1} - PK type.
getOidClone=\
jdoObjectId.{0} = ({1})key.{0}.clone();\n
# convertObjectIdToPrimaryKey() for a single PK field of Object type.
# {0} - PK field.
getPK1=\
return jdoObjectId.{0};\n
# convertObjectIdToPrimaryKey() for a single PK field of primitive type.
# {0} - PK field.
# {1} - Wrapper for PK field type.
getPK1primitive=\
return new {1}(jdoObjectId.{0});\n
# convertObjectIdToPrimaryKey() for a single PK field of mutable type.
# {0} - PK field.
getPK1Clone=\
return jdoObjectId.{0}.clone();\n
# convertObjectIdToPrimaryKey() for a PK class with several fields.
# {0} - PK field.
getPK=\
key.{0} = jdoObjectId.{0};\n
# convertObjectIdToPrimaryKey() for a mutable PK field
# for PK class that has several fields.
# {0} - PK field.
# {1} - PK type.
getPKClone=\
key.{0} = ({1})jdoObjectId.{0}.clone();\n
# Assert that Primary Key is not null.
assertPKNotNull=\
assertPrimaryKeyNotNull(param0);\n\
# Assert that ObjectId is not null.
assertOidNotNull=\
assertObjectIdNotNull(param0);\n\
# Assert that PK field is not null.
# {0} - PK field.
assertPKFieldNotNull=\
assertPrimaryKeyFieldNotNull(key.{0}, "{0}", _jdoBeanName);\n
#
# Other helper methods.
#
# Assertion methods
assertInstanceOfLocalInterfaceImpl=\
assertInstanceOfLocalInterfaceImpl(param0, _jdoBeanName);
assertInstanceOfRemoteInterfaceImpl=\
assertInstanceOfRemoteInterfaceImpl(param0, _jdoBeanName);
# Method returns Class
# {0} concrete impl name.
getPCClass=\
return {0}.jdoGetJdoInstanceClass();
# Method returns Object
getContainer=\
return container;
#
# -----------------------------------------------------------------------------
# End of _JDOHelper templates
# -----------------------------------------------------------------------------
#
#
# -----------------------------------------------------------------------------
# Generic finder method bodies
# -----------------------------------------------------------------------------
#
# common body of finder/selector methods
# {0} - Type of the result
# {1} - query variable identifier
# {2} - concrete CMP bean class name
# {3} - query filter
# {4} - query parameters
# {5} - query variables
# {6} - query result
# {7} - query ordering
# {8} - query prefetchEnabled (boolean)
# {9} - special JDOQL query setting for 1.1 finders
ejbFinderSelectorBody = \
{0} rs;\n\
com.sun.jdo.api.persistence.support.Query q = null;\n\
Object[] params = null;\n\
com.sun.jdo.api.persistence.support.PersistenceManager _jdoPersistenceManager = null;\n\
try '{'\n\
\t_jdoPersistenceManager = jdoGetPersistenceManager();\n\
\tif(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN {1} - jdoGetPersistenceManager: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
\tsynchronized(_jdoMonitor_{1}) '{' \n\
\t\tif (_jdoQuery_{1} != null) '{' \n\
\t\t\tq = _jdoPersistenceManager.newQuery(_jdoQuery_{1});\n\
\t\t'}' else '{'\n\
\t\t\tq = _jdoPersistenceManager.newQuery();\n\
\t\t\tq.setClass({2}.jdoGetJdoInstanceClass());\n\
\t\t\tq.setFilter("{3}");\n\
\t\t\tq.declareParameters("{4}");\n\
\t\t\tq.declareVariables("{5}");\n\
\t\t\tq.setResult("{6}");\n\
\t\t\tq.setOrdering("{7}");\n\
\t\t\tq.setPrefetchEnabled({8});\n\
{9}\
\t\t\tq.compile();\n\
\t\t\t_jdoQuery_{1} = q; \n\
\t\t'}' \n\
\t'}' \n\
# Execution of JDO query w/o arguments.
ejbQueryExecutionBody = \
\tjava.util.Collection result = (java.util.Collection)q.execute(); \n
# Execution of JDO Query w/ arguments.
# It first initializes the actual parameter array and then calls Query.execute.
# {0} - the actual parameters of the JDO Query
ejbQueryExecutionParamConvBody = \
\tparams = new Object[]'{'{0}'}';\n\
\tjava.util.Collection result = (java.util.Collection)q.executeWithArray(params); \n
# Execution of JDO aggregate query w/o arguments.
ejbAggregateQueryExecutionBody = \
\tObject result = q.execute(); \n
# Execution of JDO aggregate Query w/ arguments.
# It first initializes the actual parameter array and then calls Query.execute.
# {0} - the actual parameters of the JDO Query
ejbAggregateQueryExecutionParamConvBody = \
\tparams = new Object[]'{'{0}'}';\n\
\tObject result = q.executeWithArray(params); \n
# Code to convert an actual parameter passed to Query.execute.
# This is used to convert a local or remote interface instance to a pc instance.
# {0} - concrete impl name
# {1} - number of the actual parameter to be converted
# {2} - conversion method name
ejbQueryExecutionParamConvBodyArgument = \
((param{1}==null) ? null : {0}_JDOHelper.getHelperInstance().{2}(param{1}, _jdoPersistenceManager, false))
# Specific return statement for a multi-object finder
# {0} - name of concrete CMP bean class
# {1} - catch clause
ejbMultiFinderBody = \
\trs = {0}_JDOHelper.getHelperInstance().convertCollectionPCToPrimaryKey(result, _jdoPersistenceManager);\n\
{1}\n\
return rs;
# Specific return statement for a CMP1.1 multi-object finder returning Enumeration
# {0} - concrete CMP bean class name
# {1} - catch clause
ejbMultiFinderBodyEnumeration = \
\trs = java.util.Collections.enumeration({0}_JDOHelper.getHelperInstance().convertCollectionPCToPrimaryKey(result, _jdoPersistenceManager));\n\
{1}\n\
return rs;
# Specific return statement of a single-object finder
# {0} - finder method name
# {1} - PK Class
# {2} - concrete CMP bean class name
# {3} - catch clause
ejbSingleFinderBody = \
\tif (result.size() > 1) '{' \n\
\t\tString msg = org.glassfish.persistence.common.I18NHelper.getMessage(_jdoMessages, \n\
\t\t\t"GEN.toomanyinstances_finder_exception", "{0}", "" + result.size());\n\
\t\tif (params != null) '{'\n\
\t\t\tmsg = msg + " " + org.glassfish.persistence.common.I18NHelper.getMessage(_jdoMessages, "GEN.parameters") + \n\
\t\java.util.Arrays.asList(params);\n\
\t\t'}'\n\
\t\tFinderException ex = new FinderException(msg);\n\
\t\tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logFinderException(\n\
\t\t\tcom.sun.jdo.spi.persistence.utility.logging.Logger.FINE, _jdoBeanName, ex);\n\
\t\tthrow ex;\n\
\t'}' \n\
\tif (result.size() < 1) '{' \n\
\t\tString msg = org.glassfish.persistence.common.I18NHelper.getMessage(\n\
\t\t\t_jdoMessages, "GEN.noinstances_finder_exception", "{0}");\n\
\t\tif (params != null) '{'\n\
\t\t\tmsg = msg + " " + org.glassfish.persistence.common.I18NHelper.getMessage(_jdoMessages, "GEN.parameters") + \n\
\t\java.util.Arrays.asList(params);\n\
\t\t'}'\n\
\t\tObjectNotFoundException ex = new ObjectNotFoundException(msg);\n\
\t\tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logFinderException(\n\
\t\t\tcom.sun.jdo.spi.persistence.utility.logging.Logger.FINER, _jdoBeanName, ex);\n\
\t\tthrow ex;\n\
\t'}'\n\
\trs = ({1}){2}_JDOHelper.getHelperInstance().convertPCToPrimaryKey(result.iterator().next(), _jdoPersistenceManager);\n\
{3}\n\
return rs;
# Catch clause of the try-catch block wrapping the complete generated code
catchClause = \
}\n\
catch (com.sun.jdo.api.persistence.support.JDOException ex) {\n\
\tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithFinderLogger(_jdoBeanName, params, ex);\n\
\tthrow ex;\n\
}\n\
finally {\n\
\tjdoReleasePersistenceManager(_jdoPersistenceManager);\n\
\tif(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN jdoPersistenceManager.close: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
}
#
# -----------------------------------------------------------------------------
# End of generic finder method bodies
# -----------------------------------------------------------------------------
#
#
# -----------------------------------------------------------------------------
# End of CMP generic properties
# -----------------------------------------------------------------------------
#