CIB JCoMod technical documentation (EN)

5. Quick start

5.10. JCoMod Wrapper example for CIB format/postscript: Job to print a RTF document as postscript

import com.cib.comod.jobs.ICibFormatJob;
import com.cib.comod.jobs.JCibFormatJob;

public boolean doPostscriptJob(String a_Input, String a_Output, String a_Workspace)
{
    JCibFormatJob t_Job = new JCibFormatJob(); 
    t_Job.initialize(); 
    if (!t_Job.isInitialized()) 
    {
       System.out.println("Fehler beim Initialisieren des JCibFormatJob"); 
       t_Job.dispose(); // Resourcen d. Jobs freigeben
       return false;
    }

    //t_Job.setProperty(ICibFormatJob.PROPERTY_LICENSEKEY, "..."); 
    //t_Job.setProperty(ICibFormatJob.PROPERTY_LICENSECOMPANY, "..."); 

    //RTF Eingangsdokument
    t_Job.setProperty(ICibFormatJob.PROPERTY_INPUTFILE, "input.rtf"); 

    //zu erzeugendes Postscript Dokument
    t_Job.setProperty(ICibFormatJob.PROPERTY_OUTPUTFILE, "output.ps"); 

    //PPD Datei mit den Druckerinformationen
    t_Job.setProperty(ICibFormatJob.PROPERTY_PRINTERNAME, "lp"); 

    //Arbeitsverzeichnis in dem die Dokumente liegen
    t_Job.setProperty(ICibFormatJob.PROPERTY_WORKSPACE, "/user/test"); 

    //Fontverzeichnis in dem die Fonts liegen
    t_Job.setProperty(ICibFormatJob.PROPERTY_FONTWORKSPACE, "/user/fonts"); 

    //PPD Datei mit den Druckerinformationen
    t_Job.setProperty(ICibFormatJob.PROPERTY_PPDFILE, "/user/hp4000.ppd"); 

    //Gewünschtes Ausgabeformat
....//Postscript direkt auf den Drucker
    t_Job.setProperty(ICibFormatJob.PROPERTY_OUTPUTFORMAT, "FormatPrinterPs"); 

    //Job ausführen
    t_Job.execute();

    //Fehlerbehandlung
    int t_Error =
        ((Integer)t_Job.getProperty(ICibFormatJob.PROPERTY_ERROR)).intValue();
    if (t_Error != 0)
    {
        // Fehler beim Ausführen des Jobs
        String t_Errortext = (String)
            t_Job.getProperty(ICibFormatJob.PROPERTY_ERRORTEXT);
        System.out.println("Fehler beim Ausführen: "+t_Error+" "+t_Errortext);
        t_Job.dispose(); // Resourcen d. Jobs freigeben 
        return false;
    }
        t_Job.dispose(); // Resourcen d. Jobs freigeben
    return true;
}