Sorry folks.  just been a long day. :)  Please forgive the stupidity of 
the question.

David Corbin wrote:

>
>
> The following method is take from the Advanced OR tutorial.   Doesn't 
> this risk losing a PersistanceBroker?  Shouldn't there be a finally 
> clause to release the broker?
>
> Thanks.
> David.
>
>    protected ClassDescriptor selectClassDescriptor(
>        Map row,
>        ClassDescriptor cld)
>        throws PersistenceBrokerException
>    {
>        // check if there is an attribute which tells us which concrete 
> class        // is to be instantiated
>        FieldDescriptor concreteClassFD =
>            
> cld.getFieldDescriptorByName(ClassDescriptor.OJB_CONCRETE_CLASS);
>
>        if (concreteClassFD == null)
>            return cld;
>        else
>        {
>            PersistenceBroker broker = null;
>            try
>            {
>                String concreteClass =
>                    (String) row.get(concreteClassFD.getColumnName());
>                broker = 
> PersistenceBrokerFactory.createPersistenceBroker();
>                ClassDescriptor result =
>                    broker.getClassDescriptor(
>                        Class.forName(
>                            concreteClass,
>                            true,
>                            
> Thread.currentThread().getContextClassLoader()));
>                PersistenceBrokerFactory.releaseInstance(broker);
>                if (result == null)
>                    result = cld;
>                return result;
>            }
>            catch (PersistenceBrokerException e)
>            {
>                PersistenceBrokerFactory.releaseInstance(broker);
>                throw e;
>            }
>            catch (ClassNotFoundException e)
>            {
>                PersistenceBrokerFactory.releaseInstance(broker);
>                throw new PersistenceBrokerException(e);
>            }
>        }
>    }
>
>
>
> --
> To unsubscribe, e-mail:   
> <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: 
> <mailto:[EMAIL PROTECTED]>





--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to