Package org.jboss.ejb.plugins.cmp.jdbc.metadata

Examples of org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCQueryMetaData


         if(!knownQueries.containsKey(method))
         {
            String name = method.getName();
            if(name.equals(FIND_ALL))
            {
               JDBCQueryMetaData q = new JDBCAutomaticQueryMetaData(
                     method,
                     entity.getMetaData().getReadAhead(),
                  entity.getMetaData().getQLCompiler(), false
                  );
               knownQueries.put(method, factory.createFindAllQuery(q));
            }
            else if(name.startsWith(FIND_BY) && !name.equals(FIND_BY_PK))
            {
               try
               {
                  JDBCQueryMetaData q = new JDBCAutomaticQueryMetaData(
                        method,
                        entity.getMetaData().getReadAhead(),
                     entity.getMetaData().getQLCompiler(), false);
                  knownQueries.put(method, factory.createFindByQuery(q));
               } catch (IllegalArgumentException e)
View Full Code Here


      Collection queries = entityBridge.getMetaData().getQueries();
      Map selectorsByMethod = new HashMap(queries.size());
      Iterator definedFinders = queries.iterator();
      while(definedFinders.hasNext())
      {
         JDBCQueryMetaData metadata = (JDBCQueryMetaData)definedFinders.next();
         if(metadata.getMethod().getName().startsWith("ejbSelect"))
         {
            try
            {
               QueryCommand queryCommand = queryFactory.getQueryCommand(metadata.getMethod());
               Schema schema = ((JDBCStoreManager2)entityBridge.getManager()).getSchema();
               EJBSelectBridge ejbSelectBridge = new EJBSelectBridge(entityBridge.getContainer(), schema, metadata, queryCommand);
               selectorsByMethod.put(metadata.getMethod(), ejbSelectBridge);
            }
            catch(FinderException e)
            {
               throw new DeploymentException(e.getMessage());
            }
View Full Code Here

/*     */     {
/*     */       try
/*     */       {
/* 157 */         Method method = homeClass.getMethod("findByPrimaryKey", new Class[] { entity.getPrimaryKeyClass() });
/*     */
/* 159 */         JDBCQueryMetaData findByPKMD = this.manager.getMetaData().getQueryMetaDataForMethod(method);
/* 160 */         JDBCReadAheadMetaData readAhead = findByPKMD == null ? entity.getMetaData().getReadAhead() : findByPKMD.getReadAhead();
/*     */
/* 164 */         JDBCQueryMetaData q = new JDBCAutomaticQueryMetaData(method, readAhead, entity.getMetaData().getQLCompiler(), false);
/*     */
/* 170 */         this.knownQueries.put(method, factory.createFindByPrimaryKeyQuery(q));
/*     */
/* 172 */         if (log.isDebugEnabled())
/* 173 */           log.debug("Added findByPrimaryKey query command for home interface");
/*     */       }
/*     */       catch (NoSuchMethodException e) {
/* 176 */         throw new DeploymentException("Home interface does not have a findByPrimaryKey method");
/*     */       }
/*     */     }
/*     */
/* 180 */     if (localHomeClass != null)
/*     */     {
/*     */       Method method;
/*     */       try
/*     */       {
/* 187 */         method = localHomeClass.getMethod("findByPrimaryKey", new Class[] { entity.getPrimaryKeyClass() });
/*     */       }
/*     */       catch (NoSuchMethodException e) {
/* 190 */         throw new DeploymentException("Local home interface does not have the method findByPrimaryKey(" + entity.getPrimaryKeyClass().getName() + ")");
/*     */       }
/*     */
/* 196 */       JDBCQueryMetaData findByPKMD = this.manager.getMetaData().getQueryMetaDataForMethod(method);
/* 197 */       JDBCReadAheadMetaData readAhead = findByPKMD == null ? entity.getMetaData().getReadAhead() : findByPKMD.getReadAhead();
/*     */
/* 199 */       JDBCQueryMetaData q = new JDBCAutomaticQueryMetaData(method, readAhead, entity.getMetaData().getQLCompiler(), false);
/* 200 */       this.knownQueries.put(method, factory.createFindByPrimaryKeyQuery(q));
/*     */
/* 202 */       if (log.isDebugEnabled()) {
/* 203 */         log.debug("Added findByPrimaryKey query command for local home interface");
/*     */       }
/*     */
/*     */     }
/*     */
/* 209 */     Class ejbClass = this.manager.getMetaData().getEntityClass();
/*     */
/* 211 */     Method[] customMethods = ejbClass.getMethods();
/* 212 */     for (int i = 0; i < customMethods.length; i++)
/*     */     {
/* 214 */       Method m = customMethods[i];
/* 215 */       String methodName = m.getName();
/* 216 */       if (!methodName.startsWith("ejbFind"))
/*     */         continue;
/* 218 */       String interfaceName = 'f' + methodName.substring(4);
/*     */
/* 220 */       if (homeClass != null)
/*     */       {
/*     */         try
/*     */         {
/* 225 */           Method interfaceMethod = homeClass.getMethod(interfaceName, m.getParameterTypes());
/*     */
/* 230 */           this.knownQueries.put(interfaceMethod, new JDBCCustomFinderQuery(this.manager, m));
/*     */
/* 232 */           if (log.isDebugEnabled()) {
/* 233 */             log.debug("Added custom finder " + methodName + " on home interface");
/*     */           }
/*     */         }
/*     */         catch (NoSuchMethodException e)
/*     */         {
/*     */         }
/*     */       }
/* 240 */       if (localHomeClass == null) {
/*     */         continue;
/*     */       }
/*     */       try
/*     */       {
/* 245 */         Method interfaceMethod = localHomeClass.getMethod(interfaceName, m.getParameterTypes());
/*     */
/* 250 */         this.knownQueries.put(interfaceMethod, new JDBCCustomFinderQuery(this.manager, m));
/*     */
/* 252 */         if (log.isDebugEnabled()) {
/* 253 */           log.debug("Added custom finder " + methodName + " on local home interface");
/*     */         }
/*     */
/*     */       }
/*     */       catch (NoSuchMethodException e)
/*     */       {
/*     */       }
/*     */
/*     */     }
/*     */
/* 265 */     Iterator definedFinders = this.manager.getMetaData().getQueries().iterator();
/* 266 */     while (definedFinders.hasNext())
/*     */     {
/* 268 */       JDBCQueryMetaData q = (JDBCQueryMetaData)definedFinders.next();
/*     */
/* 270 */       if (!this.knownQueries.containsKey(q.getMethod()))
/*     */       {
/* 272 */         if ((q instanceof JDBCJBossQLQueryMetaData))
/*     */         {
/* 274 */           this.knownQueries.put(q.getMethod(), factory.createJBossQLQuery(q));
/*     */         }
/* 276 */         else if ((q instanceof JDBCDynamicQLQueryMetaData))
/*     */         {
/* 278 */           this.knownQueries.put(q.getMethod(), factory.createDynamicQLQuery(q));
/*     */         }
/* 280 */         else if ((q instanceof JDBCDeclaredQueryMetaData))
/*     */         {
/* 282 */           this.knownQueries.put(q.getMethod(), factory.createDeclaredSQLQuery(q));
/*     */         }
/* 284 */         else if ((q instanceof JDBCQlQueryMetaData))
/*     */         {
/* 286 */           this.knownQueries.put(q.getMethod(), factory.createEJBQLQuery(q));
/*     */         }
/*     */
/*     */       }
/*     */
/*     */     }
View Full Code Here

/* 322 */       if (this.knownQueries.containsKey(method))
/*     */         continue;
/* 324 */       String name = method.getName();
/* 325 */       if (name.equals("findAll"))
/*     */       {
/* 327 */         JDBCQueryMetaData q = new JDBCAutomaticQueryMetaData(method, entity.getMetaData().getReadAhead(), entity.getMetaData().getQLCompiler(), false);
/*     */
/* 332 */         this.knownQueries.put(method, factory.createFindAllQuery(q));
/*     */       } else {
/* 334 */         if ((!name.startsWith("findBy")) || (name.equals("findByPrimaryKey")))
/*     */           continue;
/*     */         try
/*     */         {
/* 338 */           JDBCQueryMetaData q = new JDBCAutomaticQueryMetaData(method, entity.getMetaData().getReadAhead(), entity.getMetaData().getQLCompiler(), false);
/*     */
/* 342 */           this.knownQueries.put(method, factory.createFindByQuery(q));
/*     */         }
/*     */         catch (IllegalArgumentException e) {
/* 345 */           log.debug("Could not create the finder " + name + ", because no matching CMP field was found.");
View Full Code Here

/*      */   {
/* 1159 */     this.selectorsByMethod = new HashMap(metadata.getQueries().size());
/* 1160 */     Iterator definedFinders = this.manager.getMetaData().getQueries().iterator();
/* 1161 */     while (definedFinders.hasNext())
/*      */     {
/* 1163 */       JDBCQueryMetaData q = (JDBCQueryMetaData)definedFinders.next();
/* 1164 */       if (q.getMethod().getName().startsWith("ejbSelect"))
/* 1165 */         this.selectorsByMethod.put(q.getMethod(), new JDBCSelectorBridge(this.manager, q));
/*      */     }
/* 1167 */     this.selectorsByMethod = Collections.unmodifiableMap(this.selectorsByMethod);
/*      */   }
View Full Code Here

/*     */     }
/*     */
/* 103 */     Iterator definedFinders = this.entity.getMetaData().getQueries().iterator();
/* 104 */     while (definedFinders.hasNext())
/*     */     {
/* 106 */       JDBCQueryMetaData q = (JDBCQueryMetaData)definedFinders.next();
/*     */
/* 108 */       if (!this.queriesByMethod.containsKey(q.getMethod()))
/*     */       {
/* 110 */         if ((q instanceof JDBCJBossQLQueryMetaData))
/*     */         {
/* 112 */           QueryCommand queryCommand = new JBossQLQueryCommand(this.entity, (JDBCJBossQLQueryMetaData)q);
/* 113 */           this.queriesByMethod.put(q.getMethod(), queryCommand);
/*     */         }
/* 115 */         else if ((q instanceof JDBCQlQueryMetaData))
/*     */         {
/* 117 */           QueryCommand queryCommand = new EJBQLQueryCommand(this.entity, (JDBCQlQueryMetaData)q);
/* 118 */           this.queriesByMethod.put(q.getMethod(), queryCommand);
/*     */         }
/* 120 */         else if ((q instanceof JDBCDeclaredQueryMetaData))
/*     */         {
/* 122 */           QueryCommand queryCommand = new DeclaredSQLQueryCommand(this.entity, (JDBCDeclaredQueryMetaData)q);
/* 123 */           this.queriesByMethod.put(q.getMethod(), queryCommand);
/*     */         }
/* 125 */         else if ((q instanceof JDBCDynamicQLQueryMetaData))
/*     */         {
/* 127 */           QueryCommand queryCommand = new DynamicQueryCommand(this.entity, (JDBCDynamicQLQueryMetaData)q);
/* 128 */           this.queriesByMethod.put(q.getMethod(), queryCommand);
/*     */         }
/*     */         else
/*     */         {
/* 132 */           throw new DeploymentException("Unsupported query metadata: method=" + q.getMethod().getName() + ", metadata=" + q);
/*     */         }
/*     */       }
/*     */     }
/*     */   }
View Full Code Here

/* 155 */     Collection queries = entityBridge.getMetaData().getQueries();
/* 156 */     Map selectorsByMethod = new HashMap(queries.size());
/* 157 */     Iterator definedFinders = queries.iterator();
/* 158 */     while (definedFinders.hasNext())
/*     */     {
/* 160 */       JDBCQueryMetaData metadata = (JDBCQueryMetaData)definedFinders.next();
/* 161 */       if (metadata.getMethod().getName().startsWith("ejbSelect"))
/*     */       {
/*     */         try
/*     */         {
/* 165 */           QueryCommand queryCommand = queryFactory.getQueryCommand(metadata.getMethod());
/* 166 */           Schema schema = ((JDBCStoreManager2)entityBridge.getManager()).getSchema();
/* 167 */           EJBSelectBridge ejbSelectBridge = new EJBSelectBridge(entityBridge.getContainer(), schema, metadata, queryCommand);
/* 168 */           selectorsByMethod.put(metadata.getMethod(), ejbSelectBridge);
/*     */         }
/*     */         catch (FinderException e)
/*     */         {
/* 172 */           throw new DeploymentException(e.getMessage());
/*     */         }
View Full Code Here

TOP

Related Classes of org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCQueryMetaData

Copyright © 2018 www.massapicom. 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.