The LoaderManagerImpl class implements the interface atg.repository.loader.LoaderManager. A LoaderManager component of type LoaderManagerImpl accepts Repository Loader jobs. Repository jobs can be initiated from two sources:

In both cases, the LoaderManager component passes the files to a TypeMapper component, which determines how to process them. Alternatively, the TypeMapping can be specified directly or in a manifest file.

Setting the repository path separator on Windows

Before submitting an import job to the LoaderManager on Windows, the target repository’s pathSeparator property must be set to backslash (\). After the import completes, reset this property to forward slash (/).

Note: If you set this pathSeparator directly in a properties file rather than in the ACC, use this format:

pathSeparator=\\

LoaderManager Properties

A LoaderManager component has the following configurable properties:

Property

Description

cancelledJobsFifoSize

The number of cancelled jobs that can be kept in the queue and are viewable in the Repository Loader Administration

Default: 0

completedJobsFifoSize

The number of completed jobs that should be kept in the queue

Default: 20

defaultBatchSize

The number of files to handle in a single transaction. This value can be overridden by a batch size argument provided in the LoaderManager’s load() and remove() methods. A batch size of -1 means to handle the entire job in one transaction. A batch size of 0 or 1 means to treat each file as a separate transaction.

Default: -1

defaultTypeMapper

The default TypeMapper that the LoaderManager uses if no TypeMapper is provided in the LoaderManager methods load() or processManifest(), or by the FileSystemMonitorService.

If a manifest file specifies its own TypeMappings, those have precedence.

Type: atg.repository.loader.TypeMapper

Default: /atg/dynamo/service/loader/FileExtensionTypeMapper

jobEventListeners

An array of components that listen to JobEvents

Type: atg.repository.loader.JobEventListener[]

jobIdGenerator

An IdGenerator component that creates job IDs

Type: atg.service.idgen.IdGenerator

Default: /atg/dynamo/service/FileIdGenerator

jobIdPrefix

A string to prepend to JobIds

Default: RLJob

jobIdSpace

The name of the IdSpace used to generate JobIds

Default: RLModuleJobIdSpace

jobQueueSize

The number of threads used in the jobs queue

Default: 1

loaderErrorEventListeners

An array of components that listen to error LoaderEvents

Type: atg.repository.loader.LoaderErrorEventListener[]

Default: null

loaderEventListeners

An array of components that listen to add, update and remove LoaderEvents.

Type: atg.repository.loader.LoaderEventListener[]

suspendedJobsFifoSize

The number of suspended jobs that should be kept in the queue

Default: 10

suspendFailedJobs

A Boolean property, specifies whether to suspend or cancel failed jobs.

Default: true

Error policies

The LoaderManager uses a configurable error handling policy, defined by the Repository Loader’s ErrorPolicy component. Each job processed by the LoaderManager might contain files that cause exceptions to be thrown. The LoaderManager consults the ErrorPolicy component to determine how to handle exceptions. All exceptions are logged. The Repository Loader sets a success state for each job and each batch. ErrorPolicy methods also determine how to proceed after encountering a problem while processing a job:

ErrorPolicy method

Returns

checkIsExceptionFatal

true: The exception terminated a job.

false: Invoked checkRequiresNewTransaction method.

checkRequiresNewTransaction

true: The exception required a new transaction in order to continue.

checkEndTransactionWithBatchState

true: Transaction demarcations should end using the value of the job’s batchFailed property. If a batch fails, all subsequent batches in the job are rolled back, whether or not they contain errors.


Copyright © 1997, 2014 Oracle and/or its affiliates. All rights reserved. Legal Notices