Changeset 2622


Ignore:
Timestamp:
02/04/10 17:05:47 (2 years ago)
Author:
jlops
Message:

JPA 2.0 Criteria API implemented! (Can somebody test this?)
I tested all functionality except IN and NESTED queries,
LAST is not implemented (What's the purpose of this query rule?)

JPADatabase needs some updates, but where-condition creation in JPAQueryGeneratorUtils seems to be completed.

Location:
maven_sequence_lims
Files:
6 added
44 edited

Legend:

Unmodified
Added
Removed
  • maven_sequence_lims/molgenis3_4_maven/src/main/java/org/molgenis/framework/data/jpa/JPAQueryGeneratorUtil.java

    r2614 r2622  
    11package org.molgenis.framework.data.jpa; 
    22 
     3import com.sun.org.apache.bcel.internal.generic.LoadClass; 
     4import java.lang.reflect.Array; 
     5import java.util.ArrayList; 
     6import java.util.Collection; 
     7import java.util.Iterator; 
    38import java.util.List; 
     9import java.util.ListIterator; 
    410import javax.persistence.EntityManager; 
     11import javax.persistence.TypedQuery; 
    512import javax.persistence.criteria.CriteriaBuilder; 
    613import javax.persistence.criteria.CriteriaQuery; 
    714import javax.persistence.criteria.Expression; 
     15import javax.persistence.criteria.Order; 
    816import javax.persistence.criteria.Predicate; 
    917import javax.persistence.criteria.Root; 
     18import javax.persistence.criteria.Selection; 
    1019import javax.persistence.metamodel.EntityType; 
    1120import javax.persistence.metamodel.Metamodel; 
     
    2130 * @author jorislops 
    2231 */ 
    23  
    2432public class JPAQueryGeneratorUtil { 
    2533 
    26     public static <E extends Entity> Predicate createWhere( 
    27             Class<E> klass, JpaMapper mapper, EntityManager em, Root<E> root, 
    28             CriteriaQuery cq, CriteriaBuilder cb, QueryRule... rules) { 
     34    public static <IN extends Entity> TypedQuery<IN> createWhere( 
     35            Class<IN> inputClass, 
     36            JpaMapper mapper, EntityManager em, 
     37            QueryRule... rules) { 
     38        return createWhere(inputClass, inputClass, mapper, em, rules); 
     39    } 
     40 
     41    public static <IN extends Entity, OUT> TypedQuery<OUT> createWhere( 
     42            Class<IN> inputClass, Class<OUT> outputClass, 
     43            JpaMapper mapper, EntityManager em, 
     44            QueryRule... rules) { 
     45 
     46        CriteriaBuilder cb = em.getCriteriaBuilder(); 
     47        CriteriaQuery<OUT> cq = cb.createQuery(outputClass); 
     48        Metamodel m = em.getMetamodel(); 
     49        Root<IN> root = cq.from(inputClass); 
     50 
     51        if (inputClass.getSimpleName().equals(outputClass.getSimpleName())) { 
     52            cq.select((Selection<? extends OUT>) root); 
     53        } else { 
     54            cq.select((Selection<? extends OUT>) cb.count(root)); 
     55        } 
     56 
     57        int[] limitOffset = createWhere(mapper, root, cq, cb, rules); 
     58 
     59        TypedQuery<OUT> query = em.createQuery(cq); 
     60        if (limitOffset[0] != -1) { 
     61            query.setMaxResults(limitOffset[0]); 
     62        } 
     63        if (limitOffset[1] != -1) { 
     64            query.setFirstResult(limitOffset[1]); 
     65        } 
     66        return query; 
     67    } 
     68 
     69    private static <E> int[] createWhere( 
     70            JpaMapper mapper, Root<E> root, 
     71            CriteriaQuery cq, CriteriaBuilder cb, 
     72            QueryRule... rules) { 
     73 
     74        int[] limitOffset = new int[]{-1, -1}; 
     75         
     76 
    2977        Predicate whereClause = null; 
     78        List<Order> orders = new ArrayList<Order>(); 
    3079 
    3180        for (QueryRule r : rules) { 
     
    3382            if (mapper != null) { 
    3483                rule.setField(mapper.getTableFieldName(rule.getField())); 
    35  
    36                 boolean whereConditon = !(rule.getOperator() == Operator.LAST || rule.getOperator() == Operator.LIMIT 
    37                         || rule.getOperator() == Operator.OFFSET || rule.getOperator() == Operator.SORTASC 
    38                         || rule.getOperator() == Operator.SORTDESC || rule.getOperator() == QueryRule.Operator.NESTED 
    39                         || rule.getOperator() == QueryRule.Operator.IN); 
    40                 if (whereConditon) { 
    41                     Predicate predicate = null; 
    42  
    43                     String field = rule.getField(); 
    44  
    45                     if(rule.getValue() == null) { 
    46                         predicate = root.get(field).isNull(); 
    47                     } else {      
    48                         switch (rule.getOperator()) { 
    49                             case EQUALS: 
    50                                 predicate = cb.equal(root.get(field), rule.getValue()); 
    51                                 break; 
    52                             case NOT: 
    53                                 predicate = cb.notEqual(root.get(field), rule.getValue()); 
    54                                 break; 
    55                             case LIKE: 
    56                                 predicate = cb.like(root.get(field).as(String.class), (String)rule.getValue()); 
    57                                 break; 
    58                             case LESS: 
    59                                 predicate = cb.lessThan(root.get(field).as(String.class), (Comparable)rule.getValue() ); 
    60                                 break; 
    61                             case GREATER: 
    62                                 predicate = cb.greaterThan(root.get(field).as(String.class), (Comparable)rule.getValue() ); 
    63                                 break; 
    64                             case LESS_EQUAL: 
    65                                 predicate = cb.lessThanOrEqualTo(root.get(field).as(String.class), (Comparable)rule.getValue() ); 
    66                                 break; 
    67                             case GREATER_EQUAL: 
    68                                 predicate = cb.greaterThanOrEqualTo(root.get(field).as(String.class), (Comparable)rule.getValue() ); 
    69                                 break; 
    70                         } 
    71                     } 
    72  
    73                     //compound coundition (and & or) 
    74                     if(whereClause != null) { 
    75                         assert predicate != null : rule.getOperator(); 
    76  
    77                         if(rule.isOr()) { 
    78                             whereClause = cb.or(whereClause, predicate); 
    79                         } else { 
    80                             whereClause = cb.and(whereClause, predicate); 
    81                         } 
    82                     } else { 
    83                         whereClause = predicate; 
    84                     } 
    85                 } 
    86             } 
    87         } 
    88         return whereClause; 
     84                String attributeName = rule.getField(); 
     85 
     86                Operator operator = rule.getOperator(); 
     87                Predicate predicate = null; 
     88 
     89                if (rule.getValue() == null) { 
     90                    predicate = root.get(attributeName).isNull(); 
     91                } else { 
     92                    switch (operator) { 
     93                        case LAST: 
     94                            throw new UnsupportedOperationException("Not supported yet."); 
     95                        case SORTASC: 
     96                            orders.add(cb.asc(root.get((String) rule.getValue()))); 
     97                            break; 
     98                        case SORTDESC: 
     99                            orders.add(cb.desc(root.get((String) rule.getValue()))); 
     100                            break; 
     101                        case LIMIT: 
     102                            limitOffset[0] = (Integer)rule.getValue(); 
     103                            break; 
     104                        case OFFSET: 
     105                            limitOffset[1] = (Integer)rule.getValue(); 
     106                            break; 
     107                        default: 
     108                            switch (operator) { 
     109                                case EQUALS: 
     110                                    predicate = cb.equal(root.get(attributeName), rule.getValue()); 
     111                                    break; 
     112                                case NOT: 
     113                                    predicate = cb.notEqual(root.get(attributeName), rule.getValue()); 
     114                                    break; 
     115                                case LIKE: 
     116                                    predicate = cb.like(root.get(attributeName).as(String.class), (String) rule.getValue()); 
     117                                    break; 
     118                                case LESS: 
     119                                    predicate = cb.lessThan(root.get(attributeName).as(String.class), (Comparable) rule.getValue()); 
     120                                    break; 
     121                                case GREATER: 
     122                                    predicate = cb.greaterThan(root.get(attributeName).as(String.class), (Comparable) rule.getValue()); 
     123                                    break; 
     124                                case LESS_EQUAL: 
     125                                    predicate = cb.lessThanOrEqualTo(root.get(attributeName).as(String.class), (Comparable) rule.getValue()); 
     126                                    break; 
     127                                case GREATER_EQUAL: 
     128                                    predicate = cb.greaterThanOrEqualTo(root.get(attributeName).as(String.class), (Comparable) rule.getValue()); 
     129                                    break; 
     130                                case NESTED: 
     131                                    QueryRule[] nestedrules = rule.getNestedRules(); 
     132                                    createWhere(mapper, root, cq, cb, nestedrules); 
     133                                    break; 
     134                                case IN: //not a query but a list for example SELECT * FROM x WHERE x.a1 IN (v1, v2, v3) 
     135                                    Object[] values = new Object[0]; 
     136                                    if (rule.getValue() instanceof List) { 
     137                                        values = ((List<Object>) rule.getValue()).toArray(); 
     138                                    } else { 
     139                                        values = (Object[]) rule.getValue(); 
     140                                    } 
     141 
     142                                    List<String> list = new ArrayList<String>(); 
     143 
     144                                    for (int i = 0; i < values.length; i++) { 
     145                                        if (mapper != null && omitQuotes(mapper.getFieldType(rule.getField()))) { 
     146                                            list.add(escapeSql(values[i])); 
     147                                        } else { 
     148                                            list.add(escapeSql(values[i])); 
     149                                        } 
     150                                    } 
     151                                    predicate = root.get(attributeName).in(list); 
     152                                    break; 
     153                            } 
     154                            //make a where clause from the predicate 
     155                            if (whereClause != null) { 
     156                                assert predicate != null : rule.getOperator(); 
     157 
     158                                if (rule.isOr()) { 
     159                                    whereClause = cb.or(whereClause, predicate); 
     160                                } else { 
     161                                    whereClause = cb.and(whereClause, predicate); 
     162                                } 
     163                            } else { 
     164                                whereClause = predicate; 
     165                            } 
     166                            break; //of default 
     167                    } 
     168                } 
     169 
     170            } 
     171        } 
     172        if (orders.size() > 0) { 
     173            cq.orderBy(orders); 
     174        } 
     175        if (whereClause != null) { 
     176            cq.where(whereClause); 
     177        } 
     178        return limitOffset; 
    89179    } 
    90180 
  • maven_sequence_lims/molgenis3_4_maven/src/main/java/org/molgenis/framework/data/jpa/JpaDatabase.java

    r2614 r2622  
    1313import javax.persistence.EntityManager; 
    1414import javax.persistence.RollbackException; 
     15import javax.persistence.TypedQuery; 
    1516import javax.persistence.criteria.CriteriaBuilder; 
    1617import javax.persistence.criteria.CriteriaQuery; 
     
    104105    public <E extends Entity> int count(Class<E> klazz, QueryRule... rules) 
    105106            throws DatabaseException { 
    106         CriteriaBuilder cb = em.getCriteriaBuilder(); 
    107         CriteriaQuery<Long> cq = cb.createQuery(Long.class); 
    108         Metamodel m = em.getMetamodel(); 
    109         Root<E> root = cq.from(klazz); 
    110  
    111         cq.select(cb.count(root.get("id"))); 
    112  
    113107        JpaMapper<E> mapper = mappers.get(klazz.getName()); 
    114         Predicate whereClause = JPAQueryGeneratorUtil.createWhere(klazz, mapper, em, root, cq, cb, rules); 
    115         if(whereClause != null) 
    116             cq.where(whereClause); 
    117  
    118         if(!inTransaction) { 
    119                 em.getTransaction().begin(); 
    120         } 
    121         //dit moet anders 
    122         int count = em.createQuery(cq).getSingleResult().intValue(); 
    123         if(!inTransaction) { 
    124                 em.getTransaction().commit(); 
    125         } 
     108        TypedQuery<Long> typedQuery = 
     109            JPAQueryGeneratorUtil.createWhere(klazz, Long.class, mapper, em, rules); 
     110 
     111        if(!inTransaction) 
     112            em.getTransaction().begin(); 
     113        int count = typedQuery.getSingleResult().intValue(); 
     114        if(!inTransaction) 
     115            em.getTransaction().commit(); 
    126116        return count; 
    127117    } 
     
    167157 
    168158        JpaMapper<E> mapper = mappers.get(klazz.getName()); 
    169         Predicate whereClause = 
    170                 JPAQueryGeneratorUtil.createWhere(klazz, mapper, em, root, cq, cb, rules); 
    171         if (whereClause != null) { 
    172             cq.where(whereClause); 
    173         } 
    174  
    175         if (!inTransaction) { 
     159 
     160        TypedQuery<E> typedQuery = 
     161            JPAQueryGeneratorUtil.createWhere(klazz, mapper, em, rules); 
     162 
     163        if (!inTransaction) 
    176164            em.getTransaction().begin(); 
    177         } 
    178         List<E> entities = em.createQuery(cq).getResultList(); 
    179         if (!inTransaction) { 
     165 
     166        List<E> entities = typedQuery.getResultList(); 
     167 
     168        if (!inTransaction)  
    180169            em.getTransaction().commit(); 
    181         } 
    182170 
    183171        return entities; 
  • maven_sequence_lims/molgenis3_4_maven/src/main/java/org/molgenis/generators/data/types/JpaDataTypeGen.java.ftl

    r2614 r2622  
    219219                        <#if !entity.hasSuperclassField(field.name) > 
    220220    @Column(name = "${name(field)}", nullable=${field.isNillable()?string}) 
    221     private ${type(field)} ${name(field)} = ${default(field)}; 
     221    private ${type(field)} ${name(field)}; 
    222222                </#if> 
    223223        </#if>           
     
    229229                        <#if field.type != "mref"> 
    230230        @Transient 
    231         private String ${name(field)}_label = null; 
     231        private String ${name(field)}_label; 
    232232        @Transient 
    233233        private ${type(field)} ${name(field)}_xref = ${default(field)}; 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/MolgenisServlet.java

    r2618 r2622  
    11/* 
    22 * Created by: org.molgenis.generators.servlet.MolgenisServletGen 
    3  * Date: February 2, 2010 
     3 * Date: February 4, 2010 
    44 */ 
    55 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/CustomerJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Customer.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/FlowcellJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Flowcell.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/GA_RunJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA GA_Run.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/LaneJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Lane.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/Lane_AssignmentJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Lane_Assignment.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/Lane_ConfigJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Lane_Config.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/LibprepJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Libprep.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/LimsUserJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA LimsUser.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/Pipeline_RUNJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Pipeline_RUN.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/ReagentJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Reagent.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/Reagent_UsageJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Reagent_Usage.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/RecipeJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Recipe.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/SampleJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Sample.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/TaskJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Task.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/handwritten/sequencing/data/types/TechnicianJPAListener.java

    r2618 r2622  
    22/* File:        ui/model/JPA Technician.java 
    33 * Copyright:   GBIC 2000-2,010, all rights reserved 
    4  * Date:        February 2, 2010 
     4 * Date:        February 4, 2010 
    55 * 
    66 * generator:   org.molgenis.generators.data.types.JpaDataTypeListenerGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/source.R

    r2618 r2622  
    22# File:        ui/R/src/main/java/source.R 
    33# Copyright:   GBIC 2000-2,010, all rights reserved 
    4 # Date:        February 2, 2010 
     4# Date:        February 4, 2010 
    55# 
    66# generator:   org.molgenis.generators.R.RApi 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/tools/CsvExport.java

    r2618 r2622  
    11 
    2 /* Date:        February 2, 2010 
     2/* Date:        February 4, 2010 
    33 *  
    44 * generator:   org.molgenis.generators.tools.CsvExportGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/tools/CsvImportByName.java

    r2618 r2622  
    11 
    2 /* Date:        February 2, 2010 
     2/* Date:        February 4, 2010 
    33 *  
    44 * generator:   org.molgenis.generators.tools.CsvImportByNameGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/JDBCMetaDatabase.java

    r2618 r2622  
    11/* File:        ui/model/JDBCDatabase 
    22 * Copyright:   Inventory 2000-2,010, GBIC 2002-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.data.JDBCMetaDatabaseGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/JpaDatabase.java

    r2618 r2622  
    11/* File:        ui/model/JDBCDatabase 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.data.JpaDatabaseGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/data/InMemoryDatabase.java

    r2618 r2622  
    11/* File:        ui/model/JDBCDatabase 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.data.InMemoryDatabaseGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/Administration/CustomersForm.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.Administration.Customers.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.FormScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/Administration/ReagentForm.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.Administration.Reagent.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.FormScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/Administration/RecipeForm.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.Administration.Recipe.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.FormScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/Administration/TechniciansForm.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.Administration.Technicians.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.FormScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/AdministrationMenu.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.Administration.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.MenuScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/ClusterStation/FlowcellForm.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.ClusterStation.flowcell.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.FormScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/ClusterStation/flowcell/FlowcellMenuMenu.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.ClusterStation.flowcell.flowcellMenu.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.MenuScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/ClusterStation/flowcell/flowcellMenu/LanePlugin.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.ClusterStation.flowcell.flowcellMenu.Lane.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.PluginScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/ClusterStationMenu.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.ClusterStation.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.MenuScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/GA_Run/GA_Run/ReagentsUsedForm.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.GA_Run.GA_Run.reagentsUsed.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.FormScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/GA_Run/GA_RunForm.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.GA_Run.GA_Run.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.FormScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/GA_RunMenu.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.GA_Run.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.MenuScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/Pipeline/PIPELINE_RUN/CONFIG_PER_LANEForm.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.Pipeline.PIPELINE_RUN.CONFIG_PER_LANE.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.FormScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/Pipeline/PIPELINE_RUNForm.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.Pipeline.PIPELINE_RUN.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.FormScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/PipelineMenu.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.Pipeline.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.MenuScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/SamplesAndLibprepMenu.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.samplesAndLibprep.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.MenuScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/samplesAndLibprep/LibprepForm.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.samplesAndLibprep.libprep.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.FormScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/Main/samplesAndLibprep/SamplesForm.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.samplesAndLibprep.samples.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.FormScreenGen 3.3.0-testing 
  • maven_sequence_lims/sequence_lims_maven/src/main/java/ui/screen/MainMenu.java

    r2618 r2622  
    11/* File:        Ui/screen/molgenis.Main.java 
    22 * Copyright:   GBIC 2000-2,010, all rights reserved 
    3  * Date:        February 2, 2010 
     3 * Date:        February 4, 2010 
    44 *  
    55 * generator:   org.molgenis.generators.screen.MenuScreenGen 3.3.0-testing 
Note: See TracChangeset for help on using the changeset viewer.