com.partnersoft.v3x.apps.Staker.interfaces
Class ExternalInterfaceModule

java.lang.Object
  extended by com.partnersoft.v3x.apps.Staker.interfaces.ExternalInterfaceModule
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
BeanShellModule, CSVInterfaceModule, DBRecordInterfaceModule, GenericInterfaceModule, ImprovedTextRecordInterfaceModule, PartnerWebInterfaceModule, PythonModule, ReportModule, SEDCModule, SQLExportInterfaceModule, SQLInterfaceModule, TextRecordInterfaceModule

public abstract class ExternalInterfaceModule
extends java.lang.Object
implements java.io.Serializable

This is a handy configurable module that manages a piece of peer software that wants to receive, create, or modify job information.

Examples might include accounting systems, the standard report module, mapping systems, web publishing systems, or whatever.

These modules also define different "views" of the data, often suitable for reports. Reports are so useful, in fact, that a report generation feature is provided. This feature is used by the FieldStaker.

The server examines the configured modules, and sets things up so that one- or two-way communication happens through them. A module may import jobs, export jobs, or both. If exporting is enabled, then the server notifies the module whenever a job is updated by sending it the job number. At the configurable export interval, the module processes these jobs, presumably exporting them to another software system.

If a module imports jobs, the server starts a thread which activates the import feature at the configurable import interval. Jobs or job changes are transferred from the other software system and added to the job library.

See Also:
Serialized Form

Field Summary
protected  boolean verbose
           
 
Constructor Summary
ExternalInterfaceModule()
           
 
Method Summary
abstract  java.lang.Object createExternalJob(Job job)
          Create the specialized "Job" for this interface.
abstract  void export(Job jobbie)
          Exports a single job.
abstract  java.lang.String generateReportFor(Job jobbie)
          Generates a job report.
 java.lang.String getDoNotExportField()
           
 boolean getExportOnce()
          Exports job info only once?
 java.lang.String getExportOnceProperty()
          This is a property path from the job header.
 ExternalInterfaceHub getHub()
           
 JobLibrarian getLibrarian()
           
 Log getLog()
          The interface log.
 java.lang.String getName()
          A unique name for this interface, for example: "COBOLicoCIS" or something.
 int getRunInterval()
          How often do I import and export, in seconds?
 int getRunLag()
          How long should I wait before starting the spin cycle?
 boolean getSynchronousExport()
           
 void haltInterface()
          Stops the interfaces.
 boolean isExporting()
          Does this module export job information?
 boolean isImporting()
          Does this module import job information?
 boolean isInterfaceRunning()
          Is the interface running?
 boolean isVerbose()
           
 void launchInterface(JobLibrarian librarian)
          Starts up the import and export interfaces, if any, in separate threads.
abstract  void runImport(JobLibrarian librarian)
          Makes an import run.
 void setDoNotExportField(java.lang.String newField)
           
 void setExporting(boolean izit)
           
 void setExportOnce(boolean izit)
           
 void setExportOnceProperty(java.lang.String newProperty)
           
 void setHub(ExternalInterfaceHub hubby)
           
 void setImporting(boolean izit)
           
 void setLibrarian(JobLibrarian newLibrarian)
           
 void setName(java.lang.String newName)
           
 void setRunInterval(int newInterval)
           
 void setRunLag(int newLag)
           
 void setSynchronousExport(boolean tizit)
           
 void setVerbose(boolean izit)
           
 void updateJob(java.lang.String jobNumber)
          Queues a job for updating
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

verbose

protected boolean verbose
Constructor Detail

ExternalInterfaceModule

public ExternalInterfaceModule()
Method Detail

runImport

public abstract void runImport(JobLibrarian librarian)
Makes an import run. Do what you gotta do.


export

public abstract void export(Job jobbie)
Exports a single job. Do what you gotta do.


createExternalJob

public abstract java.lang.Object createExternalJob(Job job)
Create the specialized "Job" for this interface. Often this has some sort of subset or superset or disjoint set of the data actually stored by the staking system.


generateReportFor

public abstract java.lang.String generateReportFor(Job jobbie)
Generates a job report. Not always applicable; if so use return "".


getLibrarian

public JobLibrarian getLibrarian()

setLibrarian

public void setLibrarian(JobLibrarian newLibrarian)

launchInterface

public void launchInterface(JobLibrarian librarian)
Starts up the import and export interfaces, if any, in separate threads.


haltInterface

public void haltInterface()
Stops the interfaces.


isInterfaceRunning

public boolean isInterfaceRunning()
Is the interface running?


updateJob

public void updateJob(java.lang.String jobNumber)
Queues a job for updating


getName

public java.lang.String getName()
A unique name for this interface, for example: "COBOLicoCIS" or something.


setName

public void setName(java.lang.String newName)

isImporting

public boolean isImporting()
Does this module import job information?


setImporting

public void setImporting(boolean izit)

getRunInterval

public int getRunInterval()
How often do I import and export, in seconds?


setRunInterval

public void setRunInterval(int newInterval)

getRunLag

public int getRunLag()
How long should I wait before starting the spin cycle?


setRunLag

public void setRunLag(int newLag)

isExporting

public boolean isExporting()
Does this module export job information?


setExporting

public void setExporting(boolean izit)

getExportOnce

public boolean getExportOnce()
Exports job info only once?


setExportOnce

public void setExportOnce(boolean izit)

getExportOnceProperty

public java.lang.String getExportOnceProperty()
This is a property path from the job header.


setExportOnceProperty

public void setExportOnceProperty(java.lang.String newProperty)

isVerbose

public boolean isVerbose()

setVerbose

public void setVerbose(boolean izit)

getSynchronousExport

public boolean getSynchronousExport()

setSynchronousExport

public void setSynchronousExport(boolean tizit)

getDoNotExportField

public java.lang.String getDoNotExportField()

setDoNotExportField

public void setDoNotExportField(java.lang.String newField)

getLog

public Log getLog()
The interface log.


getHub

public ExternalInterfaceHub getHub()

setHub

public void setHub(ExternalInterfaceHub hubby)