Die Klasse AccessParameterUPAM im Package com.fujitsu.ts.jrio.DMS stellt eine Reihe zusätzlicher Methoden zum Setzen und Abfragen weiterer Parameter, die für diese Zugriffsmethode spezifisch sind, bereit.
Objekte dieser abstrakten Klasse können vom Anwender nicht erzeugt werden. Die Klasse RecordFile bietet aber die Methoden getAccessParameter() und getDefaultAccessParameter(), über die der Anwender Objekte der Implementierung dieser Klasse erhalten kann.
Unzulässige Werte bei den einzelnen Parametern werden zumeist nicht beim Eintragen der Werte in das Parameter-Objekt, sondern erst bei dessen Verwendung entdeckt.
Die Methode getRecordFormat() liefert das Satzformat, das in diesem Parameter-Objekt gespeichert ist. Die Methode setRecordFormat() setzt das Satzformat in diesem Parameter-Objekt. Nur die Angabe RECORD_FORMAT_FIXED ist bei UPAM möglich.
Die Methode getRecordLength() liefert die Satzlänge, die in diesem Parameter-Objekt gespeichert ist. Die Methode setRecordLength() setzt die Satzlänge in diesem Parameter-Objekt. Für UPAM ist die Satzlänge immer identisch zur logischen Blocklänge in Bytes. Es sind also nur Werte zulässig, die ein Vielfaches von 2048 sind.
Die Methode getBlockControl() liefert das Blockformat, das in diesem Parameter-Objekt gespeichert ist. Dieser Parameter entspricht der Angabe BLKCTRL im DMS. Die Methode setBlockControl() setzt das Blockformat in diesem Parameter-Objekt. Die Angaben BLOCK_CONTROL_BY_PUBSET, BLOCK_CONTROL_DATA, BLOCK_CONTROL_NO, BLOCK_CONTROL_PAMKEY, BLOCK_CONTROL_DATA_2K und BLOCK_CONTROL_DATA_4K sind möglich. Dieser Parameter wird nur beim Erzeugen neuer Dateien berücksichtigt.
Die Methode getPrimarySpaceAllocation() liefert den in diesem Parameter-Objekt gespeicherten Wert für die primäre Speicherplatzzuordnung einer Datei. Die Methode setPrimarySpaceAllocation() setzt den Wert für die primäre Speicherplatzzuordnung einer Datei in diesem Parameter-Objekt. Dieser Parameter entspricht dem ersten Teil der Angabe SPACE im DMS.
Die Methode getSecondarySpaceAllocation() liefert den in diesem Parameter-Objekt gespeicherten Wert für die sekundäre Speicherplatzzuordnung einer Datei. Die Methode setSecondarySpaceAllocation() setzt den Wert für die sekundäre Speicherplatzzuordnung einer Datei in diesem Parameter-Objekt. Dieser Parameter entspricht dem zweiten Teil der Angabe SPACE im DMS.
Die Methode getSharedUpdate() liefert true bzw. false, je nachdem ob mit diesem ParameterObjekt die gleichzeitige Bearbeitung einer Datei durch mehrere Anwendungen (Shared-Update-Verarbeitung) erlaubt ist (erlaubt werden soll) bzw. verboten ist (verboten werden soll). Die Methode setSharedUpdate() legt fest, ob mit diesem Parameter-Objekt für eine Datei die Shared-Update-Verarbeitung erlaubt sein soll (setSharedUpdate(true)) oder nicht (setSharedUpdate(false)). Der Parameter wird nur beim Öffnen einer Datei berücksichtigt. Dieser Parameter entspricht der Angabe SHARUPD im DMS.
Die Methode getWaitMode() liefert die in diesem Parameter-Objekt gespeicherte Einstellung für das Verhalten der Anwendung bei Zugriffskonflikten während der Shared-Update-Verarbeitung für eine mit diesem Parameter-Objekt geöffnete Datei. Die Methode setWaitMode() steuert das Verhalten der Anwendung bei Zugriffskonflikten während der Shared-Update-Verarbeitung für eine Datei. Die Angaben NO_WAIT, THREAD_WAIT und APPLICATION_WAIT sind möglich. NO_WAIT bewirkt, dass die Anwendung nicht auf Zuteilung der Sperre wartet und im Konfliktfall eine RecordLockedException ausgelöst wird.
THREAD_WAIT bewirkt, dass der Thread in einen Wartezustand versetzt wird. Nach Ablauf einer (intern festgelegten kurzen) Wartezeit wird solange erneut versucht, die Sperre zu erhalten, bis dies gelingt oder die Anwendung beendet wird. APPLICATION_WAIT bewirkt, dass die gesamte Anwendung an der Systemschnittstelle auf Zuteilung der Sperre wartet. Die Wartezeit an der Systemschnittstelle ist vom Betriebssystem auf ca. 30 min begrenzt. Nach Ablauf dieser Zeit wird nach einer (intern festgelegten kurzen) Wartezeit der Systemaufruf solange erneut aufgesetzt, bis die Sperre erhalten oder die Anwendung beendet wird. Dieser Parameter hat im DMS keine direkte Entsprechung, da das Warteverhalten bei UPAM-Shared-Update nur über den PAMTOUT-Wert gesteuert werden kann.