All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.sun.jdo.spi.persistence.support.ejb.ejbc.CMP20Templates.properties Maven / Gradle / Ivy

#
# 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.
#

#
# -----------------------------------------------------------------------------
#                       CMP2.x specific properties
# -----------------------------------------------------------------------------
#

#
# Code Signature via CVS keyword substitution
#    
signature2_0 = $RCSfile: CMP20Templates.properties,v $ $Revision: 1.2 $

#
# Variables:
#
# PLEASE NOTE, all internal variables should start with _jdo
# to avoid name clashes with CMR variables.
#

#this is for cmr relationship
# {0} - local cmr variable type
# {1} - local cmr variable name
localCmrVariables=\
    {0} {1} null

# {0} - Collection cmr variable name
cleanCollectionCmr=\
    if ({0} != null) '{' \n\
        \t((com.sun.jdo.spi.persistence.support.ejb.cmp.EJBHashSet){0}).invalidate();\n\
        \t{0} = null;\n\
    '}'\n

#
# Methods:
#

# {0} - getter name.
getter=\
    try '{'\n\
        \treturn _jdoInstance.{0}();\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
        \tthrow ex;\n\
    '}'

# {0} - Concrete Impl name
# {1} - field name
assertPKsetter=\
    {0}_JDOHelper.getHelperInstance().assertPrimaryKeyFieldNotNull(param0, "{1}", _jdoBeanName);\n

# {0} - setter name.
pksetter=\
    try '{'\n\
        \t_jdoInstance.{0}(param0);\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{' \n\
        \tString msg = com.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionFromPKSetter(_jdoBeanName, ex);\n\
        \tthrow new IllegalStateException(msg);\n\
    '}'

# {0} - setter name.
pkstringsetter=\
    try '{'\n\
        \t_jdoInstance.{0}(param0.trim());\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{' \n\
        \tString msg = com.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionFromPKSetter(_jdoBeanName, ex);\n\
        \tthrow new IllegalStateException(msg);\n\
    '}'

# {0} - setter name.
# {1} - CMP field type.
pkcopysetter=\
    try '{'\n\
        \t_jdoInstance.{0}(({1})param0.clone());\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{' \n\
        \tString msg = com.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionFromPKSetter(_jdoBeanName, ex);\n\
        \tthrow new IllegalStateException(msg);\n\
    '}'

# {0} - setter name.
setter=\
    try '{'\n\
        \t_jdoInstance.{0}(param0);\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
        \tthrow ex;\n\
    '}'

# {0} - getter name.
# {1} - CMP field type.
copygetter=\
    try '{'\n\
        \t{1} rc = _jdoInstance.{0}();\n\
        \treturn (rc == null) ? null : ({1})rc.clone();\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
        \tthrow ex;\n\
    '}'

# {0} - setter name.
# {1} - CMP field type.
copysetter=\
    try '{'\n\
        \t_jdoInstance.{0}((param0 == null) ? null : ({1})param0.clone());\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
        \tthrow ex;\n\
    '}'

# {0} - getter name.
arraygetter=\
    try '{'\n\
        \treturn jdoArrayCopy(_jdoInstance.{0}());\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
        \tthrow ex;\n\
    '}'

# {0} - setter name.
arraysetter=\
    try '{'\n\
        \t_jdoInstance.{0}(jdoArrayCopy(param0));\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
        \tthrow ex;\n\
    '}'

# {0} - getter name.
# {1} - return value type
# {2} - Concrete Impl Class Name
sfldGetter=\
    try '{'\n\
        \treturn ({1})\n\
           \t\t{2}_JDOHelper.getHelperInstance().readSerializableObjectFromByteArray ( _jdoInstance.{0}() );\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
        \tthrow ex;\n\
    '}'

# {0} - setter name.
# {1} - Concrete Impl Class Name
sfldSetter=\
    try '{'\n\
        \t_jdoInstance.{0}({1}_JDOHelper.getHelperInstance().writeSerializableObjectToByteArray(param0) );\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
        \tthrow ex;\n\
    '}'

# {0} - Related PC Class.
# {1} - getter name.
# {2} - return type.
# {3} - Related bean Impl class.
cmrGetter=\
    com.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.assertPersistent(_jdoInstance, _jdoBeanName);\n\
    try '{'\n\
        \t{0} otherPC = _jdoInstance.{1}();\n\
        \treturn ({2}){3}_JDOHelper.getHelperInstance().\n\
            \t\tconvertPCToEJBLocalObject(otherPC, _jdoPersistenceManager, _jdoEntityContext);\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
        \tthrow ex;\n\
    '}'

# {0} - Related PC Class.
# {1} - Related bean Impl class.
# {2} - setter name.
cmrSetter=\
    com.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.assertPersistent(_jdoInstance, _jdoBeanName);\n\
    assertInTransaction();\n\
    try '{'\n\
        \tif (param0 == null) '{'\n\
            \t\t_jdoInstance.{2}(null);\n\
        \t'}' else '{'\n\
            \t\t{1}_JDOHelper.getHelperInstance().assertInstanceOfLocalInterfaceImpl(param0); \n\
            \t\t{0} otherPC = ({0}){1}_JDOHelper.getHelperInstance().\n\
                \t\t\tconvertEJBLocalObjectToPC(param0, _jdoPersistenceManager, true);\n\
            \t\t_jdoInstance.{2}(otherPC);\n\
        \t'}'\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
        \tthrow ex;\n\
    '}'

# {0} - getter name.
# {1} - field name.
# {2} - Related bean Impl class.
cmrGetterCollection=\
    com.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.assertPersistent(_jdoInstance, _jdoBeanName);\n\
    if ({1} == null) '{'\n\
        \ttry '{'\n\
            \t\tCollection cmr = _jdoInstance.{0}();\n\
            \t\tif (cmr == null) '{'\n\
            \t\t\tcmr = (Collection)_jdoPersistenceManager.newCollectionInstance(\n\
                \t\t\t\tjava.util.HashSet.class, _jdoInstance, \"{1}\", \n\
                \t\t\t\t{2}_JDOHelper.getHelperInstance().getPCClass(), false, 0);\n\
            \t\t'}'\n\
            \t\t{1} = new com.sun.jdo.spi.persistence.support.ejb.cmp.EJBHashSet(_jdoPersistenceManager, \n\
            \t\t\t{2}_JDOHelper.getHelperInstance(), cmr);\n\
        \t'}' catch(com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
            \t\tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
            \t\tthrow ex;\n\
        \t'}'\n\
    '}'\n\
    return {1};

# {0} - Related bean Impl class.
# {1} - setter name.
# {2} - getter name.
# {3} - field name.
cmrSetterCollection=\
    com.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.assertPersistent(_jdoInstance, _jdoBeanName);\n\
    com.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.assertCollectionNotNull(param0, _jdoBeanName);\n\
    assertInTransaction();\n\
    Collection pcs = null;\n\
    try '{'\n\
        \tif (param0 instanceof com.sun.jdo.spi.persistence.support.ejb.cmp.EJBHashSet) '{'\n\
            \t\t_jdoInstance.{1}(((com.sun.jdo.spi.persistence.support.ejb.cmp.EJBHashSet)param0).getSCOHashSet());\n\
        \t'}' else '{'\n\
            \t\tpcs = {0}_JDOHelper.getHelperInstance().\n\
                \t\t\tconvertCollectionEJBLocalObjectToPC(param0, _jdoPersistenceManager, true);\n\
            \t\t// Convert Collection to HashSet\n\
            \t\tif (pcs instanceof java.util.HashSet) \n\
                \t\t\t_jdoInstance.{1}((java.util.HashSet)pcs);\n\
            \t\telse \n\
                \t\t\t_jdoInstance.{1}(new java.util.HashSet(pcs));\n\
        \t'}'\n\
        \tif ({3} != null) '{'\n\
            \t\t((com.sun.jdo.spi.persistence.support.ejb.cmp.EJBHashSet){3}).setSCOHashSet(_jdoInstance.{2}());\n\
        \t'}'\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDOException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.logJDOExceptionWithInternalLogger(_jdoBeanName, ex);\n\
        \tthrow ex;\n\
    '}'

# start of cascade-delete block
startCascadeDelete=\
        \tjava.util.HashMap localMap = new java.util.HashMap();\n\
        \tEJBLocalObject other = null;\n\
        \tObject container = null;\n

# Code added to ejbRemove if cascade-delete is set for the related objects
# for one-one type of the relationship.
# {0} - getter name.
# {1} - otherImpl name.
cmrCascadeDelete=\
        \tother = {0}();\n\
        \tif (other != null) '{'\n\
            \t\tlocalMap.put(other, {1}_JDOHelper.getHelperInstance().getContainer());\n\
        \t'}'\n

# Code added to ejbRemove if cascade-delete is set for the related objects
# for one-many type of the relationship.
# {0} - getter name.
# {1} - otherImpl name.
cmrCascadeDeleteCollection=\
        \tcontainer = {1}_JDOHelper.getHelperInstance().getContainer();\n\
        \tfor (java.util.Iterator it = {0}().iterator(); it.hasNext();) '{'\n\
            \t\tlocalMap.put(it.next(), container);\n\
        \t'}'\n

# end of cascade-delete block
endCascadeDelete=\
        \tcom.sun.jdo.spi.persistence.support.sqlstore.ejb.CMPHelper.setCascadeDeleteAfterSuperEJBRemove(_jdoEntityContext);\n\
        \tjava.util.Set keys = localMap.keySet();\n\
        \tfor(java.util.Iterator it = keys.iterator(); it.hasNext();) {\n\
            \t\tother = (EJBLocalObject)it.next();\n\
            \t\tcom.sun.jdo.spi.persistence.support.sqlstore.ejb.CMPHelper.removeByEJBLocalObject(other, localMap.get(other));\n\
        \t}\n

# ejbCreate2.0
# {0} - PC Class.
# {1} - actual name of the super.ejbCreateXXX method.
# {2} - param list.
# {3} - PK Class.
# {4} - Concrete Impl name
# {5} - Concatenated parameter list
#
# Note: super.ejbCreate call needs to be inside the try-catch block to 
# correctly log any JDOException thrown by accessing setters and getters of the
# jdoInstance. super.ejbCreate must be called after acquiring the 
# PersistenceManager to allow for proper cleanup in case of any failures.
ejbCreate=\
    if(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN ejbCreate - begin: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
    assertPersistenceManagerIsNull();\n\
    boolean success = false;\n\
    try '{'\n\
        \t_jdoInstance = new {0}();\n\
        \tif(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN ejbCreate - jdoGetPersistenceManager: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
        \t_jdoPersistenceManager = jdoGetPersistenceManager();\n\
        \tif(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN ejbCreate - jdoGetPersistenceManager: " + this + ":: " + _jdoPersistenceManager);\n\
        \tsuper.{1}({2});\n\
        \t_jdoPersistenceManager.makePersistent(_jdoInstance);\n\
        \tsuccess = true;\n\
        \treturn ({3}){4}_JDOHelper.getHelperInstance().convertPCToPrimaryKey(\n\
            \t\t_jdoInstance, _jdoPersistenceManager);\n\
    '}' catch (com.sun.jdo.api.persistence.support.JDODuplicateObjectIdException ex) '{'\n\
        \tcom.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.handleJDODuplicateObjectIdAsDuplicateKeyException(\n\
            \t\t_jdoBeanName, {5}, ex);\n\
        \treturn null; // this is for compilation only - an exception will be thrown \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.ejbcreate_exception_othr", _jdoBeanName, {5}, ex);\n\
        \tthrow ex;\n\
    '}' finally '{'\n\
        \tif (success) '{'\n\
            \t\tcom.sun.jdo.api.persistence.support.SynchronizationManager.registerSynchronization(this, _jdoPersistenceManager);\n\
            \t\tif(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN ejbCreate - register: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
        \t'}' else jdoClosePersistenceManager();\n\
    '}'

# ejbCreate2.0 in case of the unknown PK class.
# {0} - PC Class.
# {1} - actual name of the super.ejbCreateXXX method.
# {2} - param list.
# {3} - setter for the PK field
# {4} - Concrete Impl name
# {5} - Concatenated parameter list
# This bean version never throws DuplicateKeyException because key value is generated.
#
# Note: super.ejbCreate call needs to be inside the try-catch block to 
# correctly log any JDOException thrown by accessing setters and getters of the
# jdoInstance. super.ejbCreate must be called after acquiring the 
# PersistenceManager to allow for proper cleanup in case of any failures.
ejbCreateUnknownPK=\
    assertPersistenceManagerIsNull();\n\
    boolean success = false;\n\
    try '{'\n\
        \t_jdoInstance = new {0}();\n\
        \t_jdoPersistenceManager = jdoGetPersistenceManager();\n\
        \tsuper.{1}({2});\n\
        \t_jdoInstance.{3}(new Long(com.sun.jdo.spi.persistence.support.sqlstore.ejb.CMPHelper.getNextId()));\n\
        \t_jdoPersistenceManager.makePersistent(_jdoInstance);\n\
        \tsuccess = true;\n\
        \treturn {4}_JDOHelper.getHelperInstance().convertPCToPrimaryKey(\n\
            \t\t_jdoInstance, _jdoPersistenceManager);\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.ejbcreate_exception_othr", _jdoBeanName, {5}, ex);\n\
        \tthrow ex;\n\
    '}' finally '{'\n\
        \tif (success)\n\
            \t\tcom.sun.jdo.api.persistence.support.SynchronizationManager.registerSynchronization(this, _jdoPersistenceManager);\n\
        \telse jdoClosePersistenceManager();\n\
    '}'

# {0} - actual name of the super.ejbPostCreateXXX method.
# {1} - param list.
ejbPostCreate=\
    try '{'\n\
        \tsuper.{0}({1});\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\
    '}'

# {0} - Cascade delete block if exists.
# RESOLVE: do we need to get new PersistenceManager and new jdoInstance?
ejbRemove=\
    com.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.assertPersistenceManagerNotNull(_jdoPersistenceManager, this);\n\
    try '{'\n\
        \tsuper.ejbRemove();\n\
        {0}\n\
        \t_jdoPersistenceManager.deletePersistent(_jdoInstance);\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\
    '}'

ejbLoad=\
    if(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN ejbLoad - begin: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
    assertPersistenceManagerIsNull();\n\
    boolean success = false;\n\
    try {\n\
        \tif(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN ejbLoad - jdoGetPersistenceManager: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
        \t_jdoPersistenceManager = jdoGetPersistenceManager();\n\
        \tif(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN ejbLoad - jdoGetPersistenceManager: " + this + ":: " + _jdoPersistenceManager);\n\
        \tjdoGetInstance();\n\
        \tsuper.ejbLoad();\n\
        \tsuccess = true;\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 instanceof com.sun.jdo.api.persistence.support.JDOObjectNotFoundException) ? \n\
            \t\t(RuntimeException) new NoSuchEntityException(ex) : ex;\n\
    } finally {\n\
        \t//Do not register if there is no active transaction (in RO beans).\n\
        \tif (success && _jdoPersistenceManager.currentTransaction().isActive()) { \n\
            \t\tcom.sun.jdo.api.persistence.support.SynchronizationManager.registerSynchronization(this, _jdoPersistenceManager);\n\
            \t\tif(_logUsage)__state.append("\\n" + Thread.currentThread() + " IN ejbLoad - register: " + this + ":: " + com.sun.jdo.spi.persistence.support.sqlstore.ejb.EJBHelper.getTransaction());\n\
        \t} else jdoClosePersistenceManager();\n\
    }

ejbStore=\
    com.sun.jdo.spi.persistence.support.ejb.cmp.CMPBeanHelper.assertPersistenceManagerNotNull(_jdoPersistenceManager, this);\n\
    super.ejbStore();\n\

jdoCleanAllRefs=\
    _jdoInstance = null;\n\
    _jdoPersistenceManager = null;\n\
    jdoCleanCollectionRef();

#
# -----------------------------------------------------------------------------
#                  _JDOHelper templates for 2.x beans
# -----------------------------------------------------------------------------
#

# Assertion methods
assertInstanceOfLocalInterfaceImpl=\
    assertInstanceOfLocalInterfaceImpl(param0, _jdoBeanName);

#
# -----------------------------------------------------------------------------
#                  End of _JDOHelper templates for 2.x beans
# -----------------------------------------------------------------------------
#

#
# -----------------------------------------------------------------------------
#                     CMP 2.x finder/selector method bodies
# -----------------------------------------------------------------------------
#

# check param match with local interface impl class
# {0} - concrete impl name
# {1} - param name
ejbFinderSelectorParamCheckLocalInterface = \
    {0}_JDOHelper.getHelperInstance().assertInstanceOfLocalInterfaceImpl({1});\n

# check param match with remote interface impl class
# {0} - concrete impl name
# {1} - param name
ejbFinderSelectorParamCheckRemoteInterface = \
    {0}_JDOHelper.getHelperInstance().assertInstanceOfRemoteInterfaceImpl({1});\n

# call Container.preSelect() for ejbSelect methods to flush ejbStore changes
# {0} - Concrete Impl class name.
preSelect=\
    com.sun.jdo.spi.persistence.support.sqlstore.ejb.CMPHelper.preSelect(\n\
        \t{0}_JDOHelper.getHelperInstance().getContainer());\n

# Specific return statement of a multi-object selector
# w/ conversion of result set elements
# {0} - concrete CMP bean class name
# {1} - conversion method name
# {2} - catch clause
ejbMultiSelectorBodyConversion = \
    \trs = {0}_JDOHelper.getHelperInstance().{1}(result, _jdoPersistenceManager);\n\
    {2}\n\
    return rs; 

# Specific return statement of a multi-object selector 
# w/o conversion of result set elements
# {0} - catch clause
ejbMultiSelectorBody = \
    \trs = result;\n\
    {0}\n\
    return rs;

# Specific return statement of a multi-object selector 
# w/o conversion of result set elements returning Set
# {0} - catch clause
ejbMultiSelectorBodySet = \
    \trs = new java.util.HashSet(result); \n\
    {0}\n\
    return rs; 

# Code to the the cardinality of a the JDO result set in a single-object selector
# {0} - Selector method name
ejbSingleSelectorBody = \
    \tif (result.size() > 1) '{' \n\
        \t\tString msg = org.glassfish.persistence.common.I18NHelper.getMessage(_jdoMessages, \n\
            \t\t\t"GEN.toomanyinstances_selector_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_selector_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\tFinderException 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

# Specific return statement of a single-object selector w/ conversion
# {0} - name of the local or remote interface returned by the selector
# {1} - name of concrete CMP bean class 
# {2} - conversion method name
# {3} - catch clause
ejbSingleSelectorReturnBodyConversion = \
    \trs = ({0}){1}_JDOHelper.getHelperInstance().{2}(result.iterator().next(), _jdoPersistenceManager);\n\
    {3}\n\
    return rs; 

# Specific return statement of a single-object selector w/o conversion
# {0} - return type
# {1} - method to get the primitive type value if necessary
# {2} - catch clause
ejbSingleSelectorReturnBody = \
    \trs = (({0})result.iterator().next()){1};\n\
    {2}\n\
    return rs;

# Specific return statement of aggregate function selector w/o object 
# conversion returning a primitive value
# {0} - Selector method name
# {1} - aggregate function return type
# {2} - method to get the primitive type value if necessary
# {3} - catch clause
ejbAggregateSelectorPrimitiveReturnBody = \
    \tif (result == null) '{' \n\
        \t\tString msg = org.glassfish.persistence.common.I18NHelper.getMessage(\n\
            \t\t\t_jdoMessages, "GEN.primitivetypenull_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})result){2};\n\
    {3}\n\
    return rs;

# Specific return statement of aggregate function selector w/o object conversion
# returning a non-primitive value
# {0} - aggregate function return type
# {1} - catch clause
ejbAggregateSelectorReturnBody = \
    \trs = (({0})result);\n\
    {1}\n\
    return rs;

# Specific return statement of aggregate function selector w/ object conversion
# {0} - return type of method
# {1} - aggregate function return type
# {2} - method to get the primitive type value
# {3} - catch clause
ejbAggregateSelectorReturnBodyConversion = \
    \trs = (result == null) ? null : new {0}((({1})result){2});\n\
    {3}\n\
    return rs;

# Specific return statement of aggregate function selector w/ BigDecimal conversion
# {0} - aggregate function return type
# {1} - catch clause
ejbAggregateSelectorReturnBigDecimalConversion = \
    \trs = _jdoNumericConverter.toBigDecimal(({0})result);\n\
    {1}\n\
    return rs;

# Specific return statement of aggregate function selector w/ BigInteger conversion
# {0} - aggregate function return type
# {1} - catch clause
ejbAggregateSelectorReturnBigIntegerConversion = \
    \trs = _jdoNumericConverter.toBigInteger(({0})result);\n\
    {1}\n\
    return rs;

#
# -----------------------------------------------------------------------------
#                   End of CMP 2.x finder/selector method bodies
# -----------------------------------------------------------------------------
#

#
# -----------------------------------------------------------------------------
#                       End of CMP2.x specific properties
# -----------------------------------------------------------------------------
#





© 2015 - 2024 Weber Informatics LLC | Privacy Policy