|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--de.mvcsys.renscribe.Host
Diese Klasse stellt eine Verbindung zum NonStop-Host her
Field Summary | |
static int |
DEFINES_KEY_ATTR
|
static int |
DEFINES_KEY_CLASS
|
static int |
DEFINES_KEY_NAME
|
static int |
DEFINES_KEY_VALUE
|
static int |
EBADF
|
static int |
EINVAL
|
static String |
ENCODING
Default-Encoding ISO-8859-1 |
static int |
END_OF_FILE
|
static int |
ERR_CONNECT
|
static int |
ERR_DUPLICATE_KEY
|
static int |
ERR_GUARDIAN
|
static int |
ERR_IN_USE
|
static int |
ERR_LOGIN
|
static int |
ERR_MAX
|
static int |
ERR_NOT_FOUND
|
static int |
ERR_PROTOCOL
|
int |
errno
Fehlercode |
String |
errorMsg
Fehlertext |
static int |
EXCEPTION
|
String |
hostName
Name des Hosts |
static int |
NOT_OK
|
static int |
OK
|
static short |
OPEN_BUFFERED
|
static short |
OPEN_BUFFERED_INPUT
|
static short |
OPEN_BUFFERED_OUTPUT
|
static short |
OPEN_EXCLUSIVE
|
static short |
OPEN_FORCE_UPDATE
|
static short |
OPEN_NOWAIT
|
static short |
OPEN_SHARED
|
static short |
OPEN_STREAM
|
int |
port
TCP/IP-Port |
static int |
READ_LOCK
|
static int |
READ_NOLOCK
|
static int |
RENSCRIBE_PORT
Default Port |
static int |
SEEK_ABSOLUTE
|
static int |
SEEK_APPROXIMATE
|
static int |
SEEK_END
|
static int |
SEEK_EXACT
|
static int |
SEEK_GENERIC
|
static int |
SEEK_LOCK
|
static int |
SEEK_MASK
|
static int |
SEEK_RELATIVE
|
static int |
SEEK_REVERSE
|
static int |
SEEK_SKIP
|
protected boolean |
throwException
Throw-Exception-Flag |
static byte |
TT_BEGIN
|
static byte |
TT_COMMIT
|
static byte |
TT_NONE
|
static byte |
TT_ROLLBACK
|
static int |
TYPE_EDIT
|
static int |
TYPE_ENSCRIBE
|
static int |
TYPE_UNSTRUCTURED
|
static int |
WRITE_NOUNLOCK
|
static int |
WRITE_UNLOCK
|
Constructor Summary | |
Host(String hostName,
int port,
String user,
String password)
Konstruktor. |
|
Host(String hostName,
int port,
String user,
String password,
boolean trace)
Konstruktor. |
|
Host(String hostName,
int port,
String user,
String password,
PrintWriter traceWriter)
Konstruktor. |
|
Host(String hostName,
String user,
String password)
Konstruktor. |
|
Host(String hostName,
String user,
String password,
boolean trace)
Konstruktor. |
|
Host(String hostName,
String user,
String password,
PrintWriter traceWriter)
Konstruktor. |
Method Summary | |
boolean |
checkTransaction()
TMF-Transaktion prüfen. |
int |
closeAll()
Schliessen aller Dateien. |
int |
comment(String comment)
Comment (tut nichts, kann aber protokolliert werden) |
protected void |
connect(String user,
String password)
Baut Verbindung auf. |
short[] |
contime(byte[] timestamp,
short[] result)
Timestamp umrechnen. |
String |
create(String filename,
int type,
int code,
int recsize,
int pext,
int sext,
int maxextents)
Erzeuge eine Datei. |
void |
disconnect()
Serververbindung auflösen |
int |
flushAll()
Puffer leeren für alle Dateien. |
int |
getResult()
Ermittle das Resultat |
EFileInfo |
info(String filename)
Informationen über eine Datei. |
String |
info(String filename,
EFileDate timestamp,
int[] size,
int[] code,
int[] type,
int[] recsize,
char[] security,
String[] catalog)
Informationen über eine Datei. |
boolean |
isTransaction()
TMF-Transaktion prüfen. |
int |
loadDefines(String defines)
Lade Defines |
static void |
main(String[] args)
Test |
static String |
makeString(byte[] buffer,
int offset,
int length,
String encoding)
Erzeuge einen String mit dem angegebenen Encoding. |
EFile |
open(String filename,
String access,
int flags,
int recsize)
Datei eröffnen. |
String |
purge(String filename)
Datei löschen. |
void |
releaseAll()
Resourcen zurückgeben. |
protected int |
returnNotOk()
Werfe abhängig vom ThrowException-Flag eine Exception oder gebe NOT_OK zurück |
protected Object |
returnNull()
Wirf abhängig vom ThrowException-Flag eine Exception oder gebe null zurück |
boolean |
setDebug(boolean flag)
Debug starten/stoppen. |
void |
setThrowException(boolean throwException)
Setze das Throw-Exception-Flag. |
boolean |
setTrace(boolean flag)
Trace starten/stoppen. |
void |
setTrace(PrintWriter trace)
Trace-Writer setzen. |
int |
startLog(String server)
Logging zu Prozess starten/stoppen. |
int |
startLog(String pathmon,
String server)
Logging zu Pathway-Server oder Prozess starten/stoppen. |
int |
stopLog()
Logging zu Pathway-Server oder Prozess stoppen. |
static String |
strerror(int error)
Fehlertext ermitteln (fehlt noch) |
int |
system(String cmd)
Systemaufruf (TACL). |
int |
transact(int type)
TMF-Transaktion. |
String |
volume(String volume)
Volume wechseln |
int |
xComputeIoOffset(int offset)
Ermittle einen absoluten Parameter-String-Offset Erst müssen alle Parameter gelesen worden sein! |
int |
xDoExtIo(short cmd,
short handle,
short size)
Führe ein Sub-Kommando aus. |
byte |
xGetByte()
Ermittle das nächste Byte des Puffers. |
int |
xGetInt()
Ermittle das nächste 32-Bit-Wort des Puffers. |
byte[] |
xGetIoBuffer()
Ermittle den Byte-Array des I/O-Buffers. |
short |
xGetShort()
Ermittle das nächste 16-Bit-Wort des Puffers. |
int |
xGetString()
Ermittle den nächsten Parameter-String. |
String |
xGetString(int offset)
Ermittle einen Parameter-String. |
String |
xGetString(int offset,
boolean mayBeNull)
Ermittle einen Parameter-String. |
short |
xGetSubResult()
Ermittle das Ergebnis eines SubCommands. |
void |
xResetParameters()
Setze den Datenzeiger auf den Anfang der Daten zurück. |
void |
xSetByte(byte value)
Setze das nächste Byte des Puffers. |
void |
xSetBytes(byte[] b,
int offset,
int size)
Setze einen Byte-Array als Parameter in den Daten-Puffer. |
void |
xSetInt(int value)
Setze das nächste 32-Bit-Wort des Puffers. |
void |
xSetShort(short value)
Setze das nächste 16-Bit-Wort des Puffers. |
void |
xSetString(String value)
Setze einen Parameter-String in den Daten-Puffer (Pointer beim aktuellen Offset). |
short |
xSetSubCommand(short value)
Setze das Sub-Kommando und die Parameterlänge. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final int DEFINES_KEY_ATTR
public static final int DEFINES_KEY_CLASS
public static final int DEFINES_KEY_NAME
public static final int DEFINES_KEY_VALUE
public static final int EBADF
public static final int EINVAL
public static final String ENCODING
public static final int END_OF_FILE
public static final int ERR_CONNECT
public static final int ERR_DUPLICATE_KEY
public static final int ERR_GUARDIAN
public static final int ERR_IN_USE
public static final int ERR_LOGIN
public static final int ERR_MAX
public static final int ERR_NOT_FOUND
public static final int ERR_PROTOCOL
public int errno
public String errorMsg
public static final int EXCEPTION
public String hostName
public static final int NOT_OK
public static final int OK
public static final short OPEN_BUFFERED
public static final short OPEN_BUFFERED_INPUT
public static final short OPEN_BUFFERED_OUTPUT
public static final short OPEN_EXCLUSIVE
public static final short OPEN_FORCE_UPDATE
public static final short OPEN_NOWAIT
public static final short OPEN_SHARED
public static final short OPEN_STREAM
public int port
public static final int READ_LOCK
public static final int READ_NOLOCK
public static final int RENSCRIBE_PORT
public static final int SEEK_ABSOLUTE
public static final int SEEK_APPROXIMATE
public static final int SEEK_END
public static final int SEEK_EXACT
public static final int SEEK_GENERIC
public static final int SEEK_LOCK
public static final int SEEK_MASK
public static final int SEEK_RELATIVE
public static final int SEEK_REVERSE
public static final int SEEK_SKIP
protected boolean throwException
public static final byte TT_BEGIN
public static final byte TT_COMMIT
public static final byte TT_NONE
public static final byte TT_ROLLBACK
public static final int TYPE_EDIT
public static final int TYPE_ENSCRIBE
public static final int TYPE_UNSTRUCTURED
public static final int WRITE_NOUNLOCK
public static final int WRITE_UNLOCK
Constructor Detail |
public Host(String hostName, int port, String user, String password) throws UnknownHostException, IOException, SocketException
Konstruktor. Baut Verbindung auf.
hostName
- Hostnameport
- TCP/IP-Port auf dem RSQLSRV oder ENSERV installiert istuser
- Guardian-Benutzerpassword
- Guardian-Passwortpublic Host(String hostName, int port, String user, String password, boolean trace) throws UnknownHostException, IOException, SocketException
Konstruktor. Baut Verbindung auf.
hostName
- Hostnameport
- TCP/IP-Port auf dem RSQLSRV oder ENSERV installiert istuser
- Guardian-Benutzerpassword
- Guardian-Passworttrace
- Trace einschaltenpublic Host(String hostName, int port, String user, String password, PrintWriter traceWriter) throws UnknownHostException, IOException, SocketException
Konstruktor. Baut Verbindung auf.
hostName
- Hostnameport
- TCP/IP-Port auf dem RSQLSRV oder ENSERV installiert istuser
- Guardian-Benutzerpassword
- Guardian-PassworttraceWriter
- Trace in diesen Writerpublic Host(String hostName, String user, String password) throws UnknownHostException, IOException, SocketException
Konstruktor. Baut Verbindung auf.
hostName
- Hostname[:Port]user
- Guardian-Benutzerpassword
- Guardian-Passwortpublic Host(String hostName, String user, String password, boolean trace) throws UnknownHostException, IOException, SocketException
Konstruktor. Baut Verbindung auf.
hostName
- Hostname[:Port]user
- Guardian-Benutzerpassword
- Guardian-Passworttrace
- Trace einschaltenpublic Host(String hostName, String user, String password, PrintWriter traceWriter) throws UnknownHostException, IOException, SocketException
Konstruktor. Baut Verbindung auf.
hostName
- Hostname[:Port]user
- Guardian-Benutzerpassword
- Guardian-PassworttraceWriter
- Trace in diesen WriterMethod Detail |
public boolean checkTransaction() throws IOException
TMF-Transaktion prüfen.
Diese Version fragt explizit beim Host nach!true
, wenn eine Transaktion offen istpublic int closeAll()
Schliessen aller Dateien.
public int comment(String comment) throws IOException
comment
- Kommentar (nur Text erlaubt!)protected void connect(String user, String password) throws UnknownHostException, IOException, SocketException
Baut Verbindung auf.
user
- Guardian-Benutzerpassword
- Guardian-Passwortpublic short[] contime(byte[] timestamp, short[] result) throws IOException
Timestamp umrechnen.
public String create(String filename, int type, int code, int recsize, int pext, int sext, int maxextents) throws IOException
Erzeuge eine Datei.
filename
- Name der Dateitype
- Host.TYPE_UNSTRUCTURED, Host.TYPE_EDIT
oder Host.TYPE_ENSCRIBEcode
- Filecoderecsize
- Satzlänge bei strukturierten Dateienpext
- Primary Extent Sizesext
- Secondary Extent Sizemaxextents
- Anzahl der Extentspublic void disconnect() throws IOException
public int flushAll() throws IOException
Puffer leeren für alle Dateien.
public int getResult()
public EFileInfo info(String filename) throws IOException
Informationen über eine Datei.
public String info(String filename, EFileDate timestamp, int[] size, int[] code, int[] type, int[] recsize, char[] security, String[] catalog) throws IOException
Informationen über eine Datei.
Der Aufruf gibt Werte über die Parameter zurueck, die vorher angelegt sein müssen:
String filename = "file"; EFileDate date = new EFileDate(); int[] size = new int[ 1 ]; int[] code = new int[ 1 ]; int[] type = new int[ 1 ]; int[] recsize = new int[ 1 ]; char[] security[] = new char[ 4 ]; String fullName = info( filename, date, size, code, type, recsize, security );
filename
- Name der Dateitimestamp
- Zeitpunkt der letzten Änderung
(Rückgabewert wie alle folgenden auch).size
- Dateigröße in size[0]code
- Filecode in code[0]type
- Filetyp in type[0]recsize
- Satzlänge in recsize[0]security
- Zugriffsrechte (4 Zeichen, RWEP)public boolean isTransaction()
TMF-Transaktion prüfen.
Diese Version gibt nur das Flag zurück!true
, wenn eine Transaktion offen istpublic int loadDefines(String defines) throws IOException
defines
- Dateiname auf NonStop-Host oder
"add define"
-Befehlpublic static void main(String[] args) throws Exception
public static String makeString(byte[] buffer, int offset, int length, String encoding)
Erzeuge einen String mit dem angegebenen Encoding.
Bei Problemen wir das Standard-Encoding benutzt.buffer
- Datenpufferoffset
- Offset der Daten im Pufferlength
- Länge des Stringsencoding
- gewüschtes Encodingpublic EFile open(String filename, String access, int flags, int recsize) throws IOException
Datei eröffnen.
filename
- Guardian-Dateinameaccess
- Zugriffsart als Text wie in C ("wb", "r+", ...)flags
- Open-Flags (Host.OPEN_...)recsize
- (maximale) Satzlänge der Dateipublic String purge(String filename) throws IOException
Datei löschen.
filename
- Die zu löschende Enscribe-Dateipublic void releaseAll()
Resourcen zurückgeben.
Diese Implementierung setzt die laufende TMF-Transaktion zurück und schließt alle Dateien.protected int returnNotOk() throws IOException
protected Object returnNull() throws IOException
public boolean setDebug(boolean flag)
Debug starten/stoppen.
public void setThrowException(boolean throwException)
Setze das Throw-Exception-Flag.
Bei Fehlern wird automatisch eine IOException geworfen.public boolean setTrace(boolean flag)
Trace starten/stoppen.
public void setTrace(PrintWriter trace)
Trace-Writer setzen.
public int startLog(String server) throws IOException
Logging zu Prozess starten/stoppen.
Ist der Parameternull
, stoppt das Loggingserver
- Prozessnamepublic int startLog(String pathmon, String server) throws IOException
Logging zu Pathway-Server oder Prozess starten/stoppen.
Sind beide Parameternull
, stoppt das Loggingpathmon
- Pathway-Monitor oder null
pathmon
- Pathway-Monitor oder null
server
- Pathway-Server oder Prozessnamepublic int stopLog() throws IOException
Logging zu Pathway-Server oder Prozess stoppen.
public static String strerror(int error)
public int system(String cmd) throws IOException
Systemaufruf (TACL).
cmd
- Befehl für TACL.
Das Out-File sollte für jeden Befehl gesetzt werden!public int transact(int type) throws IOException
TMF-Transaktion.
type
- Host.TT_BEGIN, Host.TT_COMMIT oder Host.TT_ROLLBACKpublic String volume(String volume) throws IOException
volume
- Subvolumme-Namepublic int xComputeIoOffset(int offset)
Ermittle einen absoluten Parameter-String-Offset
Erst müssen alle Parameter gelesen worden sein!Nur von SubCommand (RSQL) aufzurufen!
offset
- Ergebnis von xGetString()
public int xDoExtIo(short cmd, short handle, short size) throws IOException
Führe ein Sub-Kommando aus.
Nur von SubCommand (RSQL) aufzurufen!
cmd
- das Kommandohandle
- (File-)Handlesize
- Anzahl der Bytespublic byte xGetByte()
Ermittle das nächste Byte des Puffers.
Nur von SubCommand (RSQL) aufzurufen!
public int xGetInt()
Ermittle das nächste 32-Bit-Wort des Puffers.
Nur von SubCommand (RSQL) aufzurufen!
public byte[] xGetIoBuffer()
Ermittle den Byte-Array des I/O-Buffers.
Nur von SubCommand (RSQL) aufzurufen!
public short xGetShort()
Ermittle das nächste 16-Bit-Wort des Puffers.
Nur von SubCommand (RSQL) aufzurufen!
public int xGetString()
Ermittle den nächsten Parameter-String.
Nur von SubCommand (RSQL) aufzurufen!
public String xGetString(int offset)
Ermittle einen Parameter-String.
Erst müssen alle Parameter gelesen worden sein!Nur von SubCommand (RSQL) aufzurufen!
offset
- Ergebnis von xGetString()
null
zurückpublic String xGetString(int offset, boolean mayBeNull)
Ermittle einen Parameter-String.
Erst müssen alle Parameter gelesen worden sein!
Nur von SubCommand (RSQL) aufzurufen!
offset
- Ergebnis von xGetString()
mayBeNull
- Wenn true
, dann werden leere Strings
durch null
ersetztpublic short xGetSubResult()
Ermittle das Ergebnis eines SubCommands.
Nur von SubCommand (RSQL) aufzurufen!
public void xResetParameters()
Setze den Datenzeiger auf den Anfang der Daten zurück.
Der Befehl muss vor dem ersten setXxxx() aufgerufen werden.Nur von SubCommand (RSQL) aufzurufen!
public void xSetByte(byte value)
Setze das nächste Byte des Puffers.
Nur von SubCommand (RSQL) aufzurufen!
value
- das Bytepublic void xSetBytes(byte[] b, int offset, int size)
Setze einen Byte-Array als Parameter in den Daten-Puffer. (Pointer beim aktuellen Offset).
Achtung: die Daten werden gepuffert und erst beim Aufruf von
xSetSubCommand(short)
in den Daten-Puffer geschrieben!
Der wirkliche Offset ist vorher nicht bekannt.
Nur von SubCommand (RSQL) aufzurufen!
data
- Quelleoffset
- Offset innerhalb der Quellesize
- Laenge der Datenpublic void xSetInt(int value)
Setze das nächste 32-Bit-Wort des Puffers.
Nur von SubCommand (RSQL) aufzurufen!
value
- das Wortpublic void xSetShort(short value)
Setze das nächste 16-Bit-Wort des Puffers.
Nur von SubCommand (RSQL) aufzurufen!
value
- das Wortpublic void xSetString(String value)
Setze einen Parameter-String in den Daten-Puffer (Pointer beim aktuellen Offset).
Achtung: die Strings werden gepuffert und erst beim Aufruf vonxSetSubCommand(short)
in den Daten-Puffer geschrieben!
Der wirkliche Offset ist vorher nicht bekannt!
Nur von SubCommand (RSQL) aufzurufen!
value
- der Stringpublic short xSetSubCommand(short value)
Setze das Sub-Kommando und die Parameterlänge.
Vorher werden alle gepufferten Strings in den Puffer gepackt.Nur von SubCommand (RSQL) aufzurufen!
value
- das Sub-Kommando
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |