Examples of CmpEntityBeanComponent


Examples of org.jboss.as.cmp.component.CmpEntityBeanComponent

        // Related Manager
        relatedManager = (JDBCStoreManager) relatedEntity.getManager();

        // Related Container
        CmpEntityBeanComponent relatedComponent = relatedManager.getComponent();
        this.relatedContainerRef = new WeakReference<CmpEntityBeanComponent>(relatedComponent);

        // related findByPrimaryKey
        Class homeClass = (relatedComponent.getLocalHomeClass() != null ?
                relatedComponent.getLocalHomeClass() : relatedComponent.getHomeClass());
        try {
            relatedFindByPrimaryKey =
                    homeClass.getMethod("findByPrimaryKey", new Class[]{relatedEntity.getPrimaryKeyClass()});
        } catch (Exception e) {
            throw new RuntimeException("findByPrimaryKey(" +
View Full Code Here

Examples of org.jboss.as.cmp.component.CmpEntityBeanComponent

     * @param fk - foreign key value.
     * @return related local object instance.
     */
    public EJBLocalObject getRelatedEntityByFK(Object fk) {
        EJBLocalObject relatedLocalObject = null;
        final CmpEntityBeanComponent relatedContainer = getRelatedComponent();

        if (hasFKFieldsMappedToCMPFields && relatedManager.getReadAheadCache().getPreloadDataMap(fk, false) == null) {  // not in preload cache
            try {
                relatedLocalObject = relatedContainer.getEjbLocalObject(fk);
            } catch (Exception ignore) {
                // no such entity. it is ok to ignore
            }
        } else {
            relatedLocalObject = relatedContainer.getEjbLocalObject(fk);
        }

        return relatedLocalObject;
    }
View Full Code Here

Examples of org.jboss.as.cmp.component.CmpEntityBeanComponent

        }
    }

    private Transaction getTransaction() {
        try {
            CmpEntityBeanComponent component = getJDBCStoreManager().getComponent();
            TransactionManager tm = component.getTransactionManager();
            return tm.getTransaction();
        } catch (SystemException e) {
            throw new EJBException("Error getting transaction from the transaction manager", e);
        }
    }
View Full Code Here

Examples of org.jboss.as.cmp.component.CmpEntityBeanComponent

    }


    protected Object invokeFind(final InterceptorContext context, final EntityBeanComponentInstance instance) throws Exception {
        final CmpEntityBeanComponentInstance cmpInstance = CmpEntityBeanComponentInstance.class.cast(instance);
        final CmpEntityBeanComponent cmpComponent = cmpInstance.getComponent();
        try {
            cmpComponent.getComponentClass().getDeclaredMethod(finderMethod.getName(), finderMethod.getParameterTypes());
            return super.invokeFind(context, instance);
        } catch (NoSuchMethodException ignored) {
        }

        final JDBCEntityPersistenceStore store = cmpComponent.getStoreManager();

        final CmpEntityBeanContext entityContext = cmpInstance.getEjbContext();

        // as per the spec 9.6.4, entities must be synchronized with the datastore when an ejbFind<METHOD> is called.
        if (!store.getCmpConfig().isSyncOnCommitOnly()) {
            cmpComponent.synchronizeEntitiesWithinTransaction(entityContext.getTransaction());
        }

        final JDBCQueryCommand.EntityProxyFactory factory = new JDBCQueryCommand.EntityProxyFactory() {
            public Object getEntityObject(final Object primaryKey) {
                return localHome ? cmpComponent.getEJBLocalObject(primaryKey) : cmpComponent.getEJBObject(primaryKey);
            }
        };

        if (getReturnType() == ReturnType.SINGLE) {
            return store.findEntity(context.getMethod(), context.getParameters(), entityContext, factory);
View Full Code Here

Examples of org.jboss.as.cmp.component.CmpEntityBeanComponent

    }

    public Interceptor create(final InterceptorFactoryContext context) {
        return new AbstractEJBInterceptor() {
            public Object processInvocation(final InterceptorContext context) throws Exception {
                final CmpEntityBeanComponent component = getComponent(context, CmpEntityBeanComponent.class);

                final Object primaryKey = context.getPrivateData(EntityBeanComponent.PRIMARY_KEY_CONTEXT_KEY);
                if (primaryKey == null) {
                    throw new NoSuchEJBException("Invocation was not associated with an instance, primary key was null, instance may have been removed");
                }

                final CmpEntityBeanComponentInstance instance = (CmpEntityBeanComponentInstance) component.getCache().get(primaryKey);
                //Call the ejbRemove method
                Method oldMethod = context.getMethod();
                try {
                    context.putPrivateData(ComponentInstance.class, instance);
                    context.setMethod(ejbRemove);
                    context.setTarget(instance.getInstance());
                    instance.getInterceptor(ejbRemove).processInvocation(context);
                } finally {
                    context.setMethod(oldMethod);
                    context.setTarget(null);
                    context.putPrivateData(ComponentInstance.class, null);
                }

                // Invoke CMP remove
                component.getStoreManager().removeEntity(instance.getEjbContext());
                instance.setRemoved(true);
                instance.removeAllTimers();
                return null;
            }
        };
View Full Code Here

Examples of org.jboss.as.cmp.component.CmpEntityBeanComponent

    public JDBCSelectorBridge(JDBCStoreManager manager, JDBCQueryMetaData queryMetaData) {
        this.queryMetaData = queryMetaData;
        this.manager = manager;

        CmpEntityBeanComponent component = manager.getComponent();
        tm = component.getTransactionManager();
        syncBeforeSelect = !manager.getCmpConfig().isSyncOnCommitOnly();
    }
View Full Code Here

Examples of org.jboss.as.cmp.component.CmpEntityBeanComponent

    public Object execute(CmpEntityBeanContext ctx, Object[] args) throws FinderException {
        Collection retVal;
        Method method = getMethod();
        try {
            JDBCQueryCommand query = manager.getQueryManager().getQueryCommand(method);
            final CmpEntityBeanComponent selectedComponent = query.getSelectManager().getComponent();
            JDBCQueryCommand.EntityProxyFactory factory = new JDBCQueryCommand.EntityProxyFactory() {
                public Object getEntityObject(Object primaryKey) {
                    return queryMetaData.isResultTypeMappingLocal() && selectedComponent.getLocalHomeClass() != null ?
                            selectedComponent.getEJBLocalObject(primaryKey) : selectedComponent.getEJBObject(primaryKey);
                }
            };
            retVal = query.execute(method, args, null, factory);
        } catch (FinderException e) {
            throw e;
View Full Code Here

Examples of org.jboss.as.cmp.component.CmpEntityBeanComponent

        }
    }

    private Transaction getTransaction() {
        try {
            CmpEntityBeanComponent component = getJDBCStoreManager().getComponent();
            TransactionManager tm = component.getTransactionManager();
            return tm.getTransaction();
        } catch (SystemException e) {
            throw MESSAGES.errorGettingTxFromManager(e);
        }
    }
View Full Code Here

Examples of org.jboss.as.cmp.component.CmpEntityBeanComponent

            }

            // construct a new relationSet
            try {
                // get the current transaction
                CmpEntityBeanComponent component = getJDBCStoreManager().getComponent();
                TransactionManager tm = component.getTransactionManager();
                Transaction tx = tm.getTransaction();

                // if whe have a valid transaction...
                if (tx != null && (tx.getStatus() == Status.STATUS_ACTIVE || tx.getStatus() == Status.STATUS_PREPARING)) {
                    // crete the relation set and register for a tx callback
View Full Code Here

Examples of org.jboss.as.cmp.component.CmpEntityBeanComponent

        // Related Manager
        relatedManager = (JDBCStoreManager) relatedEntity.getManager();

        // Related Container
        CmpEntityBeanComponent relatedComponent = relatedManager.getComponent();
        this.relatedContainerRef = new WeakReference<CmpEntityBeanComponent>(relatedComponent);

        // related findByPrimaryKey
        Class homeClass = (relatedComponent.getLocalHomeClass() != null ?
                relatedComponent.getLocalHomeClass() : relatedComponent.getHomeClass());
        try {
            relatedFindByPrimaryKey =
                    homeClass.getMethod("findByPrimaryKey", new Class[]{relatedEntity.getPrimaryKeyClass()});
        } catch (Exception e) {
            throw CmpMessages.MESSAGES.findByPrimaryKeyNotFound(relatedEntity.getPrimaryKeyClass().getName(), homeClass.getName());
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.