/** * @param identifiables * @return a map */ private static <T extends IdentifiableBase> Map<String, T> mapById( List<T> identifiables ) { Map<String, T> byId = new HashMap<>(); for ( T identifiable : identifiables ) { byId.put( identifiable.getId(), identifiable ); } return byId; }
/** * @param dominant * @param recessive * @param recessiveSourceLevel */ private static <T extends IdentifiableBase> void shallowMergeById( List<T> dominant, List<T> recessive, String recessiveSourceLevel ) { Map<String, T> dominantById = mapById( dominant ); for ( T identifiable : recessive ) { if ( !dominantById.containsKey( identifiable.getId() ) ) { identifiable.setSourceLevel( recessiveSourceLevel ); dominant.add( identifiable ); } } }
/** * Method writeIdentifiableBase. * * @param identifiableBase * @param serializer * @param tagName * @throws java.io.IOException */ private void writeIdentifiableBase( IdentifiableBase identifiableBase, String tagName, XmlSerializer serializer ) throws java.io.IOException { serializer.startTag( NAMESPACE, tagName ); if ( ( identifiableBase.getId() != null ) && !identifiableBase.getId().equals( "default" ) ) { serializer.startTag( NAMESPACE, "id" ).text( identifiableBase.getId() ).endTag( NAMESPACE, "id" ); } serializer.endTag( NAMESPACE, tagName ); } //-- void writeIdentifiableBase( IdentifiableBase, String, XmlSerializer )
/** * Method writeIdentifiableBase. * * @param identifiableBase * @param serializer * @param tagName * @throws java.io.IOException */ private void writeIdentifiableBase( IdentifiableBase identifiableBase, String tagName, XmlSerializer serializer ) throws java.io.IOException { serializer.startTag( NAMESPACE, tagName ); if ( ( identifiableBase.getId() != null ) && !identifiableBase.getId().equals( "default" ) ) { serializer.startTag( NAMESPACE, "id" ).text( identifiableBase.getId() ).endTag( NAMESPACE, "id" ); } serializer.endTag( NAMESPACE, tagName ); } //-- void writeIdentifiableBase( IdentifiableBase, String, XmlSerializer )
/** * @param identifiables * @return a map */ private static <T extends IdentifiableBase> Map<String, T> mapById( List<T> identifiables ) { Map<String, T> byId = new HashMap<String, T>(); for ( T identifiable : identifiables ) { byId.put( identifiable.getId(), identifiable ); } return byId; }
/** * @param identifiables * @return a map */ private static <T extends IdentifiableBase> Map<String, T> mapById( List<T> identifiables ) { Map<String, T> byId = new HashMap<>(); for ( T identifiable : identifiables ) { byId.put( identifiable.getId(), identifiable ); } return byId; }
/** * @param dominant * @param recessive * @param recessiveSourceLevel */ private static <T extends IdentifiableBase> void shallowMergeById( List<T> dominant, List<T> recessive, String recessiveSourceLevel ) { Map<String, T> dominantById = mapById( dominant ); for ( T identifiable : recessive ) { if ( !dominantById.containsKey( identifiable.getId() ) ) { identifiable.setSourceLevel( recessiveSourceLevel ); dominant.add( identifiable ); } } }
/** * @param dominant * @param recessive * @param recessiveSourceLevel */ private static <T extends IdentifiableBase> void shallowMergeById( List<T> dominant, List<T> recessive, String recessiveSourceLevel ) { Map<String, T> dominantById = mapById( dominant ); for ( T identifiable : recessive ) { if ( !dominantById.containsKey( identifiable.getId() ) ) { identifiable.setSourceLevel( recessiveSourceLevel ); dominant.add( identifiable ); } } }
/** * Method updateIdentifiableBase. * * @param value * @param element * @param counter * @param xmlTag */ protected void updateIdentifiableBase(IdentifiableBase value, String xmlTag, Counter counter, Element element) { boolean shouldExist = value != null; Element root = updateElement(counter, element, xmlTag, shouldExist); if (shouldExist) { Counter innerCount = new Counter(counter.getDepth() + 1); findAndReplaceSimpleElement(innerCount, root, "id", value.getId(), null); } } //-- void updateIdentifiableBase(IdentifiableBase, String, Counter, Element)
/** * Method updateIdentifiableBase * * @param value * @param element * @param counter * @param xmlTag */ protected void updateIdentifiableBase(IdentifiableBase value, String xmlTag, Counter counter, Element element) { boolean shouldExist = value != null; Element root = updateElement(counter, element, xmlTag, shouldExist); if (shouldExist) { Counter innerCount = new Counter(counter.getDepth() + 1); findAndReplaceSimpleElement(innerCount, root, "id", value.getId(), null); } } //-- void updateIdentifiableBase(IdentifiableBase, String, Counter, Element)