Example usage for com.itextpdf.text.xml.xmp DublinCoreSchema PUBLISHER

List of usage examples for com.itextpdf.text.xml.xmp DublinCoreSchema PUBLISHER

Introduction

In this page you can find the example usage for com.itextpdf.text.xml.xmp DublinCoreSchema PUBLISHER.

Prototype

String PUBLISHER

To view the source code for com.itextpdf.text.xml.xmp DublinCoreSchema PUBLISHER.

Click Source Link

Document

Publishers.

Usage

From source file:org.crossref.pdfmark.MarkBuilder.java

License:Open Source License

@Override
public void onComplete(String requestedDoi) {
    ByteArrayOutputStream bout = new ByteArrayOutputStream();
    SchemaSet schemaSet = new SchemaSet();

    try {/*from  w  w  w.  j a  v  a  2 s  .co m*/
        Work work = null;

        switch (unixref.getType()) {
        case JOURNAL:
            work = unixref.getJournal();
            break;
        case BOOK:
            work = unixref.getBook();
            break;
        default:
            break;
        }

        if (work != null) {
            XmpWriter writer = new XmpWriter(bout);

            work.writeXmp(schemaSet);

            if (publisher != null) {
                if (generateCopyright) {
                    String cp = getCopyright(work);
                    Work.addToSchema(schemaSet.getDc(), DublinCoreSchema.RIGHTS, cp);
                    Work.addToSchema(schemaSet.getPrism(), Prism21Schema.COPYRIGHT, cp);
                }
                Work.addToSchema(schemaSet.getDc(), DublinCoreSchema.PUBLISHER, publisher.getName());
            }

            Work.addToSchema(schemaSet.getPrism(), Prism21Schema.RIGHTS_AGENT, rightsAgent);

            writer.addRdfDescription(schemaSet.getDc());
            writer.addRdfDescription(schemaSet.getPrism());
            writer.close();
        }

        xmpData = bout.toByteArray();
    } catch (IOException e) {
        onFailure(requestedDoi, MetadataGrabber.CLIENT_EXCEPTION_CODE, e.toString());
    } catch (XPathExpressionException e) {
        onFailure(requestedDoi, MetadataGrabber.CLIENT_EXCEPTION_CODE, e.toString());
    }
}