@Override public boolean equals(Object object) { // TODO: Warning - this method won't work in the case the id fields are not set if (!(object instanceof MetaUnitMultivaluedEntity)) { return false; } MetaUnitMultivaluedEntity other = (MetaUnitMultivaluedEntity) object; if ((this.getId() == null && other.getId() != null) || (this.getId() != null && !this.getId().equals(other.getId()))) { return false; } return true; }
private MetaUnitMultivaluedEntityDTO toMultivaluedEntityDTO( MetaUnitMultivaluedEntity m, boolean flattened_items) { MetaUnitMultivaluedEntityDTO dto = new MetaUnitMultivaluedEntityDTO(); try { dto.setId(m.getId()); dto.setDesc(m.getDescription()); dto.setUnique_name(m.getUnique_name()); dto.setIsCatalogizable(m.getIsCatalogizable() != 0); dto.setIsSplittingEnabled(m.getIsSplittingEnabled() != 0); dto.setIsMultiselected(m.getIsMultiSelected() != 0); Collection<MetaUnitEntityItem> items = m.getItems(); ArrayList<String> names = new ArrayList<String>(); ArrayList<Long> ids = new ArrayList<Long>(); for (MetaUnitEntityItem item : items) { names.add(item.getValue()); ids.add(item.getId()); if (flattened_items) getRecursiveItemsFlattened(names, ids, item, ". "); // { // for(MetaUnitEntityItem it:item.getSubitems()) // { // names.add(". "+it.getValue()); // ids.add(it.getId()); // } // } } dto.setItem_ids(ids); dto.setItem_names(names); ArrayList<Long> tagged_ent = new ArrayList<Long>(); if (m.getTagged_entities() != null) for (Long ent : m.getTagged_entities()) { tagged_ent.add(ent); } dto.setTagged_entities(tagged_ent); ArrayList<MetaUnitDTO> sub_meta_units_dtos = new ArrayList<MetaUnitDTO>(); if (m.getSub_meta_units() != null) for (MetaUnit unit : m.getSub_meta_units()) { if (unit != null) { if (unit instanceof MetaUnitMultivaluedEntity) { MetaUnitDTO dt; // DONE FOR SPLIITING DOWNLOAD OF DEEP TREE if (((MetaUnitMultivalued) unit).getIsSplittingEnabled() != 0) { dt = new MetaUnitMultivaluedEntityDTO( unit.getId(), unit.getUnique_name(), unit.getDescription()); ((MetaUnitMultivaluedDTO) dt) .setIsCatalogizable(((MetaUnitMultivalued) unit).getIsCatalogizable() != 0); ((MetaUnitMultivaluedDTO) dt) .setIsSplittingEnabled( ((MetaUnitMultivalued) unit).getIsSplittingEnabled() != 0); ((MetaUnitMultivaluedEntityDTO) dt) .setIsMultiselected( ((MetaUnitMultivaluedEntity) unit).getIsMultiSelected() != 0); Collection<MetaUnitEntityItem> items2 = ((MetaUnitMultivaluedEntity) unit).getItems(); ArrayList<String> names2 = new ArrayList<String>(); ArrayList<Long> ids2 = new ArrayList<Long>(); for (MetaUnitEntityItem item : items2) { names2.add(item.getValue()); ids2.add(item.getId()); } ((MetaUnitMultivaluedEntityDTO) dt).setItem_ids(ids2); ((MetaUnitMultivaluedEntityDTO) dt).setItem_names(names2); } else { dt = toMultivaluedEntityDTO((MetaUnitMultivaluedEntity) unit, flattened_items); } if (dt != null) sub_meta_units_dtos.add(dt); } else if (unit instanceof MetaUnitMultivaluedStructure) { MetaUnitDTO dt; // DONE FOR SPLIITING DOWNLOAD OF DEEP TREE if (((MetaUnitMultivalued) unit).getIsSplittingEnabled() != 0) { dt = new MetaUnitMultivaluedStructureDTO( unit.getId(), unit.getUnique_name(), unit.getDescription()); ((MetaUnitMultivaluedDTO) dt) .setIsCatalogizable(((MetaUnitMultivalued) unit).getIsCatalogizable() != 0); ((MetaUnitMultivaluedDTO) dt) .setIsSplittingEnabled( ((MetaUnitMultivalued) unit).getIsSplittingEnabled() != 0); } else { dt = toMultivaluedStructureDTO((MetaUnitMultivaluedStructure) unit); } if (dt != null) sub_meta_units_dtos.add(dt); } else { sub_meta_units_dtos.add(unit.toDTO()); } } } dto.setSub_meta_units(sub_meta_units_dtos); return dto; } catch (Exception ex) { ex.printStackTrace(); } finally { return dto; } }