Class ImpExImportCronJob

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable
    Direct Known Subclasses:
    GeneratedImportCockpitCronJob

    public class ImpExImportCronJob
    extends GeneratedImpExImportCronJob
    Cronjob which imports data from a source media jobMedia to the platform using the ImpEx logic. Unresolved lines will be dumped to the unresolvedDataStore media and tried to import again (Normal Importer logic). Instead of including streams or files you can specify a list of externalDataCollection which can be included while import by using the ImpexReader#includeExternalDataMedia methods from bean shell.
    See Also:
    Serialized Form
    • Constructor Detail

      • ImpExImportCronJob

        public ImpExImportCronJob()
    • Method Detail

      • createItem

        protected Item createItem​(SessionContext ctx,
                                  ComposedType type,
                                  Item.ItemAttributeMap allAttributes)
                           throws JaloBusinessException
        Description copied from class: Item
        Has to be implemented for each concrete subtype of item. This method is responsible for creating a new item instance ( by calling managers, ejb homes, etc. ) during ComposedType.newInstance(Map).

        In case this method uses any of the attribute values during creation it is required to override Item.getNonInitialAttributes(SessionContext, ItemAttributeMap) too.
        Sn example:

        
         public static final String MY_ATTRIBUTE = "someAttribute"; ... protected Item createItem(SessionContext
         ctx, ComposedType type, Map allAttributes ) throws JaloBusinessException { MyManager man = ... return
         man.createMyItem( (String)allAttributes.get(MY_ATTRIBUTE) );
         // here MY_ATTRIBUTE is used for creation, so it must not be set again } protected Map getNonInitialAttributes(
         SessionContext ctx, Map allAttributes ) { // let superclass remove its own initial attributes Map ret =
         super.getNonInitialAttributes( ctx, allAttributes );
         // remove MY_ATTRIBUTE from all attributes since if has already been set ret.remove(MY_ATTRIBUTE); return ret; }
        
         
        Overrides:
        createItem in class GeneratedImpExImportCronJob
        Parameters:
        ctx - the current session context which this item is created within
        type - the actual item type ( since subtypes may not provide a own jalo class this may be different from the type which this method was implemented for )
        Returns:
        the new item instance
        Throws:
        JaloBusinessException - indicates an error during creation - any changes will be rollbacked
      • createUnresolvedDataStore

        public ImpExMedia createUnresolvedDataStore()
        Creates a new media with attributes (owner, code, mime, realfilename) set as for an unresolved data store. The media will not be assigned to the createUnresolvedDataStore attribute.
        Returns:
        new media with set attributes
      • createWorkMedia

        public ImpExMedia createWorkMedia()
        Creates a new media with attributes (owner, code, mime, realfilename) set as for an unresolved data store. The media will not be assigned to the createUnresolvedDataStore attribute.
        Returns:
        new media with set attributes
      • extractZip

        public boolean extractZip()
                           throws ImpExException
        Extracts all relevant files from ZIP-file to cronjob attributes. If given job media is a zip file, it tries to find the default import script within zip and sets it as new jobmedia. All other .csv or .impex files within the zip will be added to the external data collection. Created medias will be inherit the attributes of zip media.
        Returns:
        true if an extraction was done and therefore the jobMedia was replaced, false if nothing was done
        Throws:
        ImpExException - error while extracting files and setting to map
      • adjustMaxThreads

        protected java.lang.Integer adjustMaxThreads​(java.lang.Integer value)