Package com.softwaremining.files
Class SequentialFile
java.lang.Object
com.softwaremining.wrappers.CBLBean
com.softwaremining.wrappers.AbstractBasePersistence
com.softwaremining.files.AbstractFile
com.softwaremining.files.AbstractSequentialFile
com.softwaremining.files.SequentialFile
- All Implemented Interfaces:
IPersistence,AbstractDataObject,ICBLBeanNGroup,ICBLContainer,IFieldContainer,ISMBean,ISMDataType
- Direct Known Subclasses:
AbstractSequentialMappedFile,QSAMFile
Caters for VSAM Record & Line Sequential files.
Example.
ExamplePersistentFile examplePersistentFile = new ExamplePersistentFile(null);
examplePersistentFile.assignStatus(field_status); // this needs to be an ISMField
// for Sequential files use 0,
// for LINE sequential, on windows use 2 on Unix use 1
examplePersistentFile.assignFileName( FILE_NAME );
examplePersistentFile.open(IPersistence.OPEN_MODE_INPUT);
while (examplePersistentFile.next()) {
if (! examplePersistentFile.getStatusValue().equals(IPersistence.STATUS_SUCCESS)) break;
System.out.println(" - " + examplePersistentFile.stringValue());
}
-
Field Summary
FieldsFields inherited from class com.softwaremining.files.AbstractSequentialFile
_recordSize, ADVANCE_NOT_INITIALIZED, advanceContinuation, advanceSize, advanceType, CRLFcharCount, currentRecordNumber, EJECT, FIRST_LINE_POS, firstLineTerminators, firstRead, fixedLenghtRecordsEndWithNewLine, fixedLengthRecord, justRead, LINE, lineCounter, numberOfInitialRecords, PAGE, rdw_format, RDW_LENGTH, rdw_Null, recordDependingField, targetIsPrinter, TOP_OF_PAGE, totalRuntime, useRDWFields inherited from class com.softwaremining.files.AbstractFile
openModeFields inherited from class com.softwaremining.wrappers.AbstractBasePersistence
fileName, ownerClassName, statusFields inherited from class com.softwaremining.wrappers.CBLBean
EBCDIC_JIT_PD_SUPPORT_FOR_SEQ_FILES, INDEX_FOR_NON_ARRAY_VERSION_OF_FIELD, INDEX_ZERO, tmp_lengthofAssignedValue, totalRuntime_allocate, totalRuntime_calcFieldOffsets, totalRuntime_getMemoryPosition, totalRuntime_setFieldFormattedFields inherited from interface com.softwaremining.sql.IPersistence
ACCESS_MODE_DYNAMIC, ACCESS_MODE_RANDOM, ACCESS_MODE_SEQUENTIAL, ASCENDING_RECORD_KEY, CONDITION_TYPE_EQUALS, CONDITION_TYPE_GREATER, CONDITION_TYPE_GREATER_OR_EQUALS, CONDITION_TYPE_IGNORE, CONDITION_TYPE_IGNORE_FOR_SQL_LIKE, CONDITION_TYPE_LESS, CONDITION_TYPE_LESS_OR_EQUALS, CONDITION_TYPE_LIKE, CONDITION_TYPE_NO_CONDITION, CONDITION_TYPE_NOT_ASSIGNED, DESCENDING_RECORD_KEY, OPEN_MODE_EXTEND, OPEN_MODE_I_O, OPEN_MODE_INPUT, OPEN_MODE_NOT_OPENED, OPEN_MODE_OUTPUT, STATUS_AT_END, STATUS_CLOSE_FILE_FILE_NOT_OPEN, STATUS_DUP_KEY, STATUS_FAILED_CLOSING, STATUS_INCORRECT_READ_OF_UNOPENED_FILE, STATUS_INCORRECT_RECORDSIZE_REWRITE, STATUS_INSERT_ERR_INAPPROPRIATE_FILE, STATUS_INSERT_ERR_INVALID_KEY, STATUS_LOCK, STATUS_NOT_FOUND, STATUS_OPEN_FILE_FILE_NOT_FOUND, STATUS_REWRITE_WITHOUT_READ, STATUS_SM_FAIL_UNKOWN_REASON, STATUS_SM_NOT_ASSIGNED, STATUS_SUCCESS, UNCERTAIN_OF_RETURN_VALUE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected int_insertRecord(int groupSize) Used Internally by SoftwareMining Framework Insert (write) the current data into file.intclear()intclose()Close file and change status to STATUS_SUCCEED.longReturns the current file-Length If file has not been opened yet, or if file has been closed, then it returns 0.protected voidAuxilary method (not present in COBOL).booleansupporting UNISYS IF ATTRIBUTE OPEN OF record = VALUE TRUEprotected intUsed Internally by SoftwareMining Framework read the next record from file.protected intUsed Internally by SoftwareMining framework read the next record from file.intopen(int openMode) Open file for reading.intopen(int openMode, boolean prefixFileNameWithCallingProgram) Open file for reading.intScroll back to previous record When end (or beginning) of file is reached, it does not throw an exceptionintUpdate the current record with the current record structure.Methods inherited from class com.softwaremining.files.AbstractSequentialFile
advance, advance, advance, assignDependingField, assignEncodedBytes, assignFileName, assignFixedLenghtRecordsEndWithNewLine, assignRecordsAreFixedLength, assignRecordSize, assignTargetIsPrinter, assignUsesRDW, closeReel, deleteRecord, exists, getCRLFcharCount, getRecordSize, insert, insertRecord, insertRecord, isFixedLenghtRecordsEndWithNewLine, isRDW, nextRecord, prevRecord, println, read, readRecord, retrieveCurrentRecordNumber, retrieveEncodedBytesForWrite, retrieveFieldLineCounter, retrieveFieldPageCounter, retrieveLineCounter, retrieveNumberOfInitialRecords, retrievePageCounter, retrieveRecordDependingField, setCRLFcharCountMethods inherited from class com.softwaremining.files.AbstractFile
assignOptional, resetDataDirectory, retrieveDataDirectory, retrieveFullFileName, retrieveOpenModeMethods inherited from class com.softwaremining.wrappers.AbstractBasePersistence
assignAccessMode, assignLock, assignStatus, assignStatus, assignStatusAsPrimitive, assignStatusValue, assignStatusValue, assignTableName, delete, insert, next, prev, readRow, retrieveAccessMode, retrieveFileName, retrieveFileName, retrieveFirstLevelEntry, retrieveSessionId, retrieveStatusField, retrieveStatusValue, updateMethods inherited from class com.softwaremining.wrappers.CBLBean
addCorrespondingValue, addCorrespondingValue, allocate, assignAddressTo, assignAddressTo, assignBean, assignBytesEncoded, assignCachedInitializationValue, assignCorrespondingValue, assignCorrespondingValue, assignDefaultValue, assignEbcdicBytes, assignEbcdicJIT_PdSupportForSequentialFiles, assignEncodedValue, assignExemptFromMemRelease, assignExternal, assignHighValues, assignInternalVars, assignLowValues, assignRawEbcdicBytes, assignRedefines, assignRedefines, assignSessionId, assignStringFormatted, assignSubstring, assignSubstring, assignToAddressOf, assignToAddressOf, assignToAddressOf, assignToAddressOf, assignToAllFields, assignValue, assignValue, assignValue, assignValue, assignValue, assignValue, assignValue, assignValue, calculateStorageSize, containsPointers, equals, equals, equals, equals, equalsRightTrimmed, fieldsCount, fill, fill, fill, fill, fill, getValue, hasPackedDecimalFields, initDefaultValues, initialize, initialize, isExemptFromMemRelease, isFilled, isFilled, isFilled, isFilled, isGreaterThan, isGreaterThan, isGreaterThan, isHighValues, isInvolvedInDependency, isInvolvedInExternalDependency, isLessOrEqualTo, isLessOrEqualTo, isLessOrEqualTo, isLessOrEqualTo, isLessOrEqualTo, isLessThan, isLessThan, isLessThan, isLessThan, isLessThan, isLowValues, isRedefinedByAnotherClass, isResourceAlreadyReleased, lengthOf, print, printFieldPosition, printFieldValues, printOrderedFieldPosition, releaseResources, releaseResources, resetCachedValues, resetCompressedFieldList, resetStorageManager, resetStructure, resize, retrieveActualLength, retrieveAsInt, retrieveAsString, retrieveCachedInitializationValue, retrieveCompressedFields, retrieveDependedFieldsList, retrieveEbcdicBytes, retrieveEbcdicValue, retrieveEncodedValue, retrieveField, retrieveField, retrieveFieldAtMemoryPosition, retrieveFieldFormatted, retrieveFields, retrieveIsTargetOfPointers, retrievePrimitiveFields, retrieveRawEbcdicBytes, retrieveRedefinesList, retrieveSQLObject, retrieveStorageBytes, retrieveStorageCellSize, retrieveSubstring, retrieveSubstring, retrieveTopLevelField, retrieveValue, retrieveValue, setValue, stringValue, subtractCorrespondingValue, subtractCorrespondingValue, toString
-
Field Details
-
randomAccessFile
-
log
-
-
Constructor Details
-
SequentialFile
public SequentialFile()constructor -
SequentialFile
default Constructor- Parameters:
owner-
-
-
Method Details
-
open
Open file for reading.- Specified by:
openin classAbstractBasePersistence- Parameters:
openMode- refers to:
IPersistence.OPEN_MODE_INPUT ( read )
IPersistence.OPEN_MODE_OUTPUT (Write)
IPersistence.OPEN_MODE_I_O (read-write)
IPersistence.OPEN_MODE_EXTEND: (read-write)- Throws:
IOCriticalException
-
open
Open file for reading.- Specified by:
openin classAbstractSequentialFile- Parameters:
openMode- refers to:
IPersistence.OPEN_MODE_INPUT ( read )
IPersistence.OPEN_MODE_OUTPUT (Write)
IPersistence.OPEN_MODE_I_O (read-write)
IPersistence.OPEN_MODE_EXTEND: (read-write)prefixFileNameWithCallingProgram- - when true the name of the calling program will be prefixed to the outputfilename. This is useful for REPORT files.- Returns:
- Throws:
IOCriticalException
-
close
Close file and change status to STATUS_SUCCEED.- Specified by:
closein classAbstractBasePersistence- Returns:
- when successful it returns IPersistence.STATUS_SUCCESS
- Throws:
IOCriticalException
-
isFileOpened
public boolean isFileOpened()Description copied from class:AbstractSequentialFilesupporting UNISYS IF ATTRIBUTE OPEN OF record = VALUE TRUE- Specified by:
isFileOpenedin classAbstractSequentialFile- Returns:
-
nextWithException_UseExactRecordLenght
Used Internally by SoftwareMining Framework read the next record from file. At end throw an exception- Specified by:
nextWithException_UseExactRecordLenghtin classAbstractSequentialFile- Throws:
IOCriticalExceptionAtEndException
-
nextWithException_UseLineBreaks
Used Internally by SoftwareMining framework read the next record from file. At end throw an exception- Specified by:
nextWithException_UseLineBreaksin classAbstractSequentialFile- Throws:
IOCriticalExceptionAtEndException
-
prevWithException
Scroll back to previous record When end (or beginning) of file is reached, it does not throw an exception- Specified by:
prevWithExceptionin classAbstractSequentialFile- Throws:
IOCriticalExceptionAtEndException
-
updateRecord
Update the current record with the current record structure. If at end of file is reached, it throws an exception- Specified by:
updateRecordin classAbstractBasePersistence- Returns:
- when successful it returns IPersistence.STATUS_SUCCESS
- Throws:
IOCriticalException
-
_insertRecord
Description copied from class:AbstractSequentialFileUsed Internally by SoftwareMining Framework Insert (write) the current data into file.- Specified by:
_insertRecordin classAbstractSequentialFile- Parameters:
groupSize- : Used for multi 01 files ... defines the size of the group- Throws:
IOCriticalException
-
insertNewLine
Auxilary method (not present in COBOL). Adds a new CRLF to the file.- Throws:
IOCriticalException
-
clear
- Specified by:
clearin classAbstractBasePersistence- Returns:
- when successful it returns IPersistence.STATUS_SUCCESS
- Throws:
IOCriticalException
-
fileLength
public long fileLength()Returns the current file-Length If file has not been opened yet, or if file has been closed, then it returns 0.- Returns:
-