Top Description Fields Constructors Methods
org.apache.derby.impl.drda

pack-priv Class AppRequester

extends Object
Class Inheritance
Imports
org.apache.derby.shared.common.reference.DRDAConstants, org.apache.derby.shared.common.error.MessageUtils, org.apache.derby.shared.common.sanity.SanityManager

AppRequester stores information about the application requester. It is used so that multiple sessions can share information when they are started from the same version of the application requester.

Field Summary

Modifier and TypeField and Description
private int
protected static final int
protected String
private int[]
protected static final int
private static final int[]
protected int
protected String
protected int
protected String
protected String
protected String
protected String
protected static final int
protected int

Constructor Summary

AccessConstructor and Description
pack-priv
AppRequester()

AppRequester constructor

Method Summary

Modifier and TypeMethod and Description
protected boolean

Returns:

true if same false otherwise
equals
(AppRequester
application requester to compare to
a
)

Check if the application requester is the same as this one

protected int
getClientType()

Get the type of the client.

protected int

Returns:

manager level for that manager
getManagerLevel
(int
codepoint for manager we are looking for
manager
)

get the Application requester manager level

protected int
getTimestampLength()

The timestamp length may be truncated for old versions of Derby.

protected boolean
greaterThanOrEqualTo(int
Version level
vLevel
,
int
Release level
rLevel
,
int
Modification level
mLevel
)

Check if provided JCC version level is greaterThanOrEqualTo current level

protected boolean
isXARequester()

Is this an AppRequester that supports XA return true if XAMGR >= 7, false otherwise

private boolean

Returns:

true if not equals false otherwise
notEquals
(Object
first object
a
,
Object
second object
b
)

Check whether two objects are not equal when 1 of the objects could be null

protected void
protected void
setManagerLevel(int
codepoint of the manager
manager
,
int
level for that manager
managerLevel
)

set Application requester manager level if the manager level is less than the minimum manager level, set the manager level to zero (saying we can't handle this level), this will be returned to the application requester and he can decide whether or not to proceed For CCSIDMGR, if the target server supports the CCSID manager but not the CCSID requested, the value returned is FFFF For now, we won't support the CCSIDMGR since JCC doesn't request it.

protected int
supportedMessageParamLength()

Get the maximum length supported for an exception's message parameter string.

protected boolean
protected boolean

Returns:

true if the status byte is sent, false if not
supportsEXTDTAAbort
()

Tells whether the client sends a trailing Derby-specific status byte when transferring EXTDTA objects.

protected boolean
supportsLongerLDStrings()

Return true if the client contains the fix for DERBY-5236, which allows DDMWriter.writeLDString() to write strings that need up to 64K-1 bytes when represented in UTF-8.

protected final boolean

Returns:

true if QRYCLSIMP is supported for LMTBLKPRC
supportsQryclsimpForLmtblkprc
()

Check if the client expects QRYCLSIMP to be supported when the protocol is LMTBLKPRC.

protected boolean
supportsSecMecUSRSSBPWD()

Returns true if Derby's client driver supports SECMEC_USRSSBPWD DRDA security mechanism.

protected boolean
protected boolean
protected boolean
protected boolean

Returns:

true if the AppRequester supports CCSID 1208, false if not
supportsUtf8Ccsid
()

Returns whether our AppRequester's UNICODEMGR supports UTF8 (CCSID 1208)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

clientTypeback to summary
private int clientType
DNC_CLIENTback to summary
protected static final int DNC_CLIENT
extnamback to summary
protected String extnam
managerLevelsback to summary
private int[] managerLevels
MGR_LEVEL_UNKNOWNback to summary
protected static final int MGR_LEVEL_UNKNOWN
MIN_MGR_LEVELSback to summary
private static final int[] MIN_MGR_LEVELS
modifyLevelback to summary
protected int modifyLevel
prdidback to summary
protected String prdid
releaseLevelback to summary
protected int releaseLevel
spvnamback to summary
protected String spvnam
srvclsnmback to summary
protected String srvclsnm
srvnamback to summary
protected String srvnam
srvrlslvback to summary
protected String srvrlslv
UNKNOWN_CLIENTback to summary
protected static final int UNKNOWN_CLIENT
versionLevelback to summary
protected int versionLevel

Constructor Detail

AppRequesterback to summary
pack-priv AppRequester()

AppRequester constructor

Method Detail

equalsback to summary
protected boolean equals(AppRequester a)

Check if the application requester is the same as this one

Parameters
a:AppRequester

application requester to compare to

Returns:boolean

true if same false otherwise

getClientTypeback to summary
protected int getClientType()

Get the type of the client.

getManagerLevelback to summary
protected int getManagerLevel(int manager)

get the Application requester manager level

Parameters
manager:int

codepoint for manager we are looking for

Returns:int

manager level for that manager

getTimestampLengthback to summary
protected int getTimestampLength()

The timestamp length may be truncated for old versions of Derby. See DERBY-2602.

greaterThanOrEqualToback to summary
protected boolean greaterThanOrEqualTo(int vLevel, int rLevel, int mLevel)

Check if provided JCC version level is greaterThanOrEqualTo current level

Parameters
vLevel:int

Version level

rLevel:int

Release level

mLevel:int

Modification level

isXARequesterback to summary
protected boolean isXARequester()

Is this an AppRequester that supports XA return true if XAMGR >= 7, false otherwise

notEqualsback to summary
private boolean notEquals(Object a, Object b)

Check whether two objects are not equal when 1 of the objects could be null

Parameters
a:Object

first object

b:Object

second object

Returns:boolean

true if not equals false otherwise

setClientVersionback to summary
protected void setClientVersion(String productId)
setManagerLevelback to summary
protected void setManagerLevel(int manager, int managerLevel)

set Application requester manager level if the manager level is less than the minimum manager level, set the manager level to zero (saying we can't handle this level), this will be returned to the application requester and he can decide whether or not to proceed For CCSIDMGR, if the target server supports the CCSID manager but not the CCSID requested, the value returned is FFFF For now, we won't support the CCSIDMGR since JCC doesn't request it.

Parameters
manager:int

codepoint of the manager

managerLevel:int

level for that manager

supportedMessageParamLengthback to summary
protected int supportedMessageParamLength()

Get the maximum length supported for an exception's message parameter string.

supportsBooleanValuesback to summary
protected boolean supportsBooleanValues()
supportsEXTDTAAbortback to summary
protected boolean supportsEXTDTAAbort()

Tells whether the client sends a trailing Derby-specific status byte when transferring EXTDTA objects.

Returns:boolean

true if the status byte is sent, false if not

supportsLongerLDStringsback to summary
protected boolean supportsLongerLDStrings()

Return true if the client contains the fix for DERBY-5236, which allows DDMWriter.writeLDString() to write strings that need up to 64K-1 bytes when represented in UTF-8. Otherwise, writeLDString() should use the old maximum length, which is 32700 bytes.

supportsQryclsimpForLmtblkprcback to summary
protected final boolean supportsQryclsimpForLmtblkprc()

Check if the client expects QRYCLSIMP to be supported when the protocol is LMTBLKPRC.

Returns:boolean

true if QRYCLSIMP is supported for LMTBLKPRC

supportsSecMecUSRSSBPWDback to summary
protected boolean supportsSecMecUSRSSBPWD()

Returns true if Derby's client driver supports SECMEC_USRSSBPWD DRDA security mechanism.

supportsSessionDataCachingback to summary
protected boolean supportsSessionDataCaching()
supportsTimestampNanosecondsback to summary
protected boolean supportsTimestampNanoseconds()
supportsUDTsback to summary
protected boolean supportsUDTs()
supportsUtf8Ccsidback to summary
protected boolean supportsUtf8Ccsid()

Returns whether our AppRequester's UNICODEMGR supports UTF8 (CCSID 1208)

Returns:boolean

true if the AppRequester supports CCSID 1208, false if not