public Publication getPublicationById( String identifier ) throws ImexCentralException { for ( Publication p : allPublications ) { for (Identifier i : p.getIdentifier()){ if( identifier.equals( i.getAc() ) ) { return p; } } if (p.getImexAccession() != null && p.getImexAccession().equalsIgnoreCase(identifier)){ return p; } } return null; }
public Publication getPublicationByPubmedId( String identifier ) throws ImexCentralException { for ( Publication p : allPublications ) { for (Identifier i : p.getIdentifier()){ if( "pmid".equalsIgnoreCase(i.getNs()) && identifier.equals( i.getAc() ) ) { return p; } } if (p.getImexAccession() != null && p.getImexAccession().equalsIgnoreCase(identifier)){ return p; } } return null; }
private static void print( Publication p ) { System.out.println( "-- " + p.getIdentifier().size() + " identifiers ------------------------" ); System.out.println( "Author: " + p.getAuthor() ); System.out.println( "Title: " + p.getTitle() ); System.out.println( "IMEx id: " + p.getImexAccession() ); System.out.println( "Owner: " + p.getOwner() ); System.out.println( "Status: " + p.getStatus() ); System.out.println( "Release date: " + p.getReleaseDate() ); } }
public Publication getPublicationImexAccession( String identifier, boolean create ) throws ImexCentralException { final Publication p = getPublicationById( identifier ); if (p != null){ if( create ) { if( p.getImexAccession() != null && !p.getImexAccession().equals("N/A")) { throw new IllegalStateException( "Publication already has an IMEx id: " + p.getImexAccession() ); } // assigning new IMEx ID p.setImexAccession( "IM-" + imexIdSequence ); imexIdSequence++; } } else { ImexCentralFault imexFault = new ImexCentralFault(); imexFault.setFaultCode(6); IcentralFault fault = new IcentralFault("No publication record found", imexFault); throw new ImexCentralException(fault); } return p; }
public static void main( String[] args ) throws Exception { if ( args.length < 3 ) { System.err.println( "Usage: java " + "-Djavax.net.ssl.trustStore=<path.to.keystore> " + "-Djavax.net.ssl.keyStorePassword=<password> " + "Playground <imexcentral.username> <imexcentral.password> <pmid>" ); System.exit( 1 ); } final String icUsername = args[0]; final String icPassword = args[1]; final String pmid = args[2]; ImexCentralClient client = new DefaultImexCentralClient( icUsername, icPassword, DefaultImexCentralClient.IC_TEST ); final Publication publication = client.getPublicationById( pmid ); if( publication == null ) { System.err.println( "Could not find this publication in IMExCentral." ); } else { System.out.println( "Identifier: " + publication.getIdentifier() ); System.out.println( "Title: " + publication.getTitle() ); System.out.println( "IMEx ID: " + publication.getImexAccession() ); System.out.println( "Owner: " + publication.getOwner() ); System.out.println( "Status: " + publication.getStatus() ); } } }
private void copyIdentifiersFromDelegate() { List<Identifier> imexIdentifiers = this.delegate.getIdentifier(); for (Identifier identifier : imexIdentifiers){ if (identifier.getNs() == null || identifier.getAc() == null){ // nothing to do } else if (identifier.getNs().equals("pmid")){ super.getIdentifiers().add(XrefUtils.createPubmedIdentity(identifier.getAc())); } else if (identifier.getNs().equals("imex") && !identifier.getAc().equals("N/A")){ super.getXrefs().add(XrefUtils.createXrefWithQualifier(Xref.IMEX, Xref.IMEX_MI, identifier.getAc(), Xref.IMEX_PRIMARY, Xref.IMEX_PRIMARY_MI)); } else if (identifier.getNs().equals("doi")){ super.getIdentifiers().add(XrefUtils.createDoiIdentity(identifier.getAc())); } else if (identifier.getNs().equals("jint")){ super.getIdentifiers().add(XrefUtils.createIdentityXref("jint", identifier.getAc())); } } if (super.getImexId() == null && this.delegate.getImexAccession() != null && !this.delegate.getImexAccession().equals("N/A")){ super.getXrefs().add(XrefUtils.createXrefWithQualifier(Xref.IMEX, Xref.IMEX_MI, this.delegate.getImexAccession(), Xref.IMEX_PRIMARY, Xref.IMEX_PRIMARY_MI)); } }