Changeset 2599
- Timestamp:
- 01/27/10 22:34:17 (2 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
molgenis/3.3/src/org/molgenis/generators/db/MapperMrefs.java.ftl
r2584 r2599 21 21 //retrieve currently known mrefs 22 22 QueryRule rule = new QueryRule( "${name(mref_local_field)}", QueryRule.Operator.EQUALS, entity.get${JavaName(pkey(entity))}() ); 23 List<${ mref_entity}> existing_mrefs = getDatabase().find( ${mref_entity}.class, rule );23 List<${JavaName(mref_entity)}> existing_mrefs = getDatabase().find( ${JavaName(mref_entity)}.class, rule ); 24 24 //assign ids 25 25 List<Integer> ids = new ArrayList<Integer>(); 26 26 List<String> labels = new ArrayList<String>(); 27 for(${ mref_entity} ref: existing_mrefs)27 for(${JavaName(mref_entity)} ref: existing_mrefs) 28 28 { 29 29 ids.add(ref.get${JavaName(mref_remote_field)}()); … … 48 48 { 49 49 // what mrefs to add/delete 50 List<${ mref_entity}> toDelete = new ArrayList<${mref_entity}>();51 List<${ mref_entity}> toAdd = new ArrayList<${mref_entity}>();50 List<${JavaName(mref_entity)}> toDelete = new ArrayList<${JavaName(mref_entity)}>(); 51 List<${JavaName(mref_entity)}> toAdd = new ArrayList<${JavaName(mref_entity)}>(); 52 52 53 53 for (${JavaName(entity)} entity : entities) 54 54 { 55 55 //retrieve currently known mrefs 56 QueryRule rule = new QueryRule( "${ name(mref_local_field)}", QueryRule.Operator.EQUALS, entity.get${JavaName(pkey(entity))}() );57 List<${ mref_entity}> existing_mrefs = getDatabase().find( ${mref_entity}.class, rule );56 QueryRule rule = new QueryRule( "${mref_local_field}", QueryRule.Operator.EQUALS, entity.get${JavaName(pkey(entity))}() ); 57 List<${JavaName(mref_entity)}> existing_mrefs = getDatabase().find( ${JavaName(mref_entity)}.class, rule ); 58 58 59 59 // check for removals 60 for (${mref_entity} ref : existing_mrefs) 60 List existing_ids = new ArrayList(); 61 for (${JavaName(mref_entity)} ref : existing_mrefs) 61 62 { 63 existing_ids.add(ref.get${JavaName(mref_remote_field)}()); 62 64 if (!entity.get${JavaName(f)}().contains( ref.get${JavaName(mref_remote_field)}() )) 63 65 { … … 69 71 for (Integer ref : entity.get${JavaName(f)}()) 70 72 { 71 ${mref_entity} new_mref = new ${mref_entity}(); 72 new_mref.set${JavaName(mref_local_field)}( entity.get${JavaName(pkey(entity))}() ); 73 new_mref.set${JavaName(mref_remote_field)}( ref ); 74 if (!existing_mrefs.contains( new_mref )) 73 if(!existing_ids.contains(ref)) 75 74 { 75 ${JavaName(mref_entity)} new_mref = new ${JavaName(mref_entity)}(); 76 new_mref.set${JavaName(mref_local_field)}( entity.get${JavaName(pkey(entity))}() ); 77 new_mref.set${JavaName(mref_remote_field)}( ref ); 76 78 toAdd.add( new_mref ); 77 79 } … … 94 96 { 95 97 // what mrefs to add/delete 96 List<${ mref_entity}> toDelete = new ArrayList<${mref_entity}>();98 List<${JavaName(mref_entity)}> toDelete = new ArrayList<${JavaName(mref_entity)}>(); 97 99 98 100 for (${JavaName(entity)} entity : entities) … … 100 102 //retrieve currently known mrefs 101 103 QueryRule rule = new QueryRule( "${name(mref_local_field)}", QueryRule.Operator.EQUALS, entity.get${JavaName(pkey(entity))}() ); 102 List<${ mref_entity}> existing_mrefs = getDatabase().find( ${mref_entity}.class, rule );104 List<${JavaName(mref_entity)}> existing_mrefs = getDatabase().find( ${JavaName(mref_entity)}.class, rule ); 103 105 104 106 // check for removals 105 for (${ mref_entity} ref : existing_mrefs)107 for (${JavaName(mref_entity)} ref : existing_mrefs) 106 108 { 107 109 toDelete.add( ref );
Note: See TracChangeset
for help on using the changeset viewer.