Class ConnectionProperty
- java.lang.Object
-
- org.firebirdsql.jaybird.props.def.ConnectionProperty
-
public final class ConnectionProperty extends java.lang.Object
A Jaybird connection property.Holds information like name, aliases, default value etc for a Jaybird connection property.
- Since:
- 5
- Author:
- Mark Rotteveel
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ConnectionProperty.Builder
-
Field Summary
Fields Modifier and Type Field Description static int
NO_DPB_ITEM
static int
NO_SPB_ITEM
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<java.lang.String>
aliases()
Optional aliases (secondary names) for this property.static ConnectionProperty.Builder
builder()
Creates a connection property builder.static ConnectionProperty.Builder
builder(java.lang.String name)
java.util.List<java.lang.String>
choices()
Possible values for this property.int
dpbItem()
Database parameter buffer (DPB) item associated with this property.boolean
equals(java.lang.Object o)
boolean
hasDpbItem()
int
hashCode()
boolean
hasSpbItem()
boolean
isIdenticalTo(ConnectionProperty other)
Checks if the provided object is identical to this object.java.lang.String
name()
DpbType
pbType()
Type of the value when sent in the database (or service attach) parameter buffer.int
spbItem()
Service parameter buffer (SPB) item associated with this property.java.lang.String
toString()
ConnectionPropertyType
type()
Type of the property.static ConnectionProperty
unknown(java.lang.String name)
Creates an unknown connection property.<T> T
validate(T value)
Validatesvalue
for this property.
-
-
-
Field Detail
-
NO_DPB_ITEM
public static final int NO_DPB_ITEM
- See Also:
- Constant Field Values
-
NO_SPB_ITEM
public static final int NO_SPB_ITEM
- See Also:
- Constant Field Values
-
-
Method Detail
-
builder
public static ConnectionProperty.Builder builder()
Creates a connection property builder.- Returns:
- builder
-
builder
public static ConnectionProperty.Builder builder(java.lang.String name)
-
unknown
public static ConnectionProperty unknown(java.lang.String name)
Creates an unknown connection property.An unknown connection property was either not defined but used, or can be used for lookups (given the definition of equals and hashcode). An unknown connection property returned by this method always applies type
ConnectionPropertyType.STRING
- Parameters:
name
- Property name- Returns:
- An unknown property with the specified name
-
name
public java.lang.String name()
- Returns:
- name of the property
-
aliases
public java.util.List<java.lang.String> aliases()
Optional aliases (secondary names) for this property.Aliases are alternative names for the property, either for backwards compatibility or for ease of use.
- Returns:
- aliases for this property, empty means no aliases
- See Also:
name()
-
type
public ConnectionPropertyType type()
Type of the property.- Returns:
- type of the property
-
choices
public java.util.List<java.lang.String> choices()
Possible values for this property.- Returns:
- possible values for this property, or empty when unrestricted
-
validate
public <T> T validate(T value)
Validatesvalue
for this property.- Parameters:
value
- value to validate- Returns:
value
when validation passed- Throws:
java.lang.IllegalArgumentException
- Whenvalue
is not a valid value for this property
-
pbType
public DpbType pbType()
Type of the value when sent in the database (or service attach) parameter buffer.- Returns:
- type for the parameter buffer
-
dpbItem
public int dpbItem()
Database parameter buffer (DPB) item associated with this property.- Returns:
- database parameter buffer item, or
NO_DPB_ITEM
if no item is associated - See Also:
hasDpbItem()
-
hasDpbItem
public boolean hasDpbItem()
- Returns:
true
if this property has a DPB item- See Also:
dpbItem()
-
spbItem
public int spbItem()
Service parameter buffer (SPB) item associated with this property.- Returns:
- service parameter buffer item, or
NO_SPB_ITEM
if no item is associated - See Also:
hasSpbItem()
-
hasSpbItem
public boolean hasSpbItem()
- Returns:
true
if this property has an SPB item- See Also:
spbItem()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object o)
Equality (and hash code) only considers the
name
.Use
isIdenticalTo(ConnectionProperty)
for checking full equality.- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
The hashcode (and equals) only considers the
name
.- Overrides:
hashCode
in classjava.lang.Object
-
isIdenticalTo
public boolean isIdenticalTo(ConnectionProperty other)
Checks if the provided object is identical to this object.This supplements
equals(Object)
which only checks thename
.- Parameters:
other
- Other connection property object- Returns:
true
if this is the same object or all fields have the same value,false
otherwise
-
-