@Override public void setId(String id) throws FormatException, IOException { if (id.equals(currentId)) { return; } super.setId(id); MetadataRetrieve retrieve = getMetadataRetrieve(); String xml; try { ServiceFactory factory = new ServiceFactory(); service = factory.getInstance(OMEXMLService.class); xml = service.getOMEXML(retrieve); OMEXMLMetadata noBin = service.createOMEXMLMetadata(xml); service.removeBinData(noBin); OMEXMLMetadataRoot root = (OMEXMLMetadataRoot) noBin.getRoot(); root.setCreator(FormatTools.CREATOR); xml = service.getOMEXML(noBin); } catch (DependencyException de) { throw new MissingLibraryException(OMEXMLServiceImpl.NO_OME_XML_MSG, de); } catch (ServiceException se) { throw new FormatException(se); } xmlFragments = new ArrayList<String>(); currentFragment = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; XMLTools.parseXML(xml, new OMEHandler()); xmlFragments.add(currentFragment); }
@Override public void setId(String id) throws FormatException, IOException { if (id.equals(currentId)) { return; } super.setId(id); MetadataRetrieve retrieve = getMetadataRetrieve(); String xml; try { ServiceFactory factory = new ServiceFactory(); service = factory.getInstance(OMEXMLService.class); xml = service.getOMEXML(retrieve); OMEXMLMetadata noBin = service.createOMEXMLMetadata(xml); service.removeBinData(noBin); OMEXMLMetadataRoot root = (OMEXMLMetadataRoot) noBin.getRoot(); root.setCreator(FormatTools.CREATOR); xml = service.getOMEXML(noBin); } catch (DependencyException de) { throw new MissingLibraryException(OMEXMLServiceImpl.NO_OME_XML_MSG, de); } catch (ServiceException se) { throw new FormatException(se); } xmlFragments = new ArrayList<String>(); currentFragment = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; XMLTools.parseXML(xml, new OMEHandler()); xmlFragments.add(currentFragment); }