- All Implemented Interfaces:
Iterable<ProtocolDescriptor>
In general, getProtocols(String) should be used with the enableProtocol connection property value.
- Since:
- 3.0
- Author:
- Mark Rotteveel
-
Method Summary
Modifier and TypeMethodDescriptionstatic ProtocolCollectioncreate(ProtocolDescriptor... descriptors) Creates a ProtocolCollection with the specified ProtocolDescriptors.static ProtocolCollectionReturns the available ProtocolCollection.intgetProtocolDescriptor(int protocolVersion) static ProtocolCollectiongetProtocols(String enableProtocol) Returns the protocol collection consisting of the supported protocol versions and the additional protocol versions defined by theenableProtocolconnection string property.Get a list with the protocol versions in this collection.static ProtocolCollectionReturns the supported ProtocolCollection.iterator()stream()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Method Details
-
iterator
- Specified by:
iteratorin interfaceIterable<ProtocolDescriptor>
-
getProtocolDescriptor
- Parameters:
protocolVersion- Version of the protocol- Returns:
- ProtocolDescriptor for the specified version, or null if the version is not in this ProtocolCollection
-
getProtocolCount
public int getProtocolCount()- Returns:
- The protocol count
-
getProtocolVersions
Get a list with the protocol versions in this collection.The returned List is created fresh on every call. Changes to the list have no effect on this object.
- Returns:
- Protocol version numbers
-
stream
- Returns:
- stream of the protocol descriptors held by this protocol collection
- Since:
- 6
-
create
Creates a ProtocolCollection with the specified ProtocolDescriptors.If
descriptorscontains multiple implementations with the same value forProtocolDescriptor.getVersion(), then the first implementation with the highest value forProtocolDescriptor.getWeight()will be loaded into the collection.- Parameters:
descriptors- Vararg parameter with ProtocolDescriptors- Returns:
- ProtocolCollection
-
getSupportedProtocols
Returns the supported ProtocolCollection.The supported ProtocolCollection is created when this class is loaded by the classloader.
The returned collection is a subset of
getAvailableProtocols(), retaining only the supported protocol versions.- Returns:
- supported ProtocolCollection
- Since:
- 6
- See Also:
-
getAvailableProtocols
Returns the available ProtocolCollection.The available ProtocolCollection is created when this class is loaded by the classloader.
This implementation uses the
ServiceLoaderto load the collection based on allProtocolDescriptorimplementations found using all the/META-INF/services/org.firebirdsql.gds.ng.wire.ProtocolDescriptorin the classpath. If multiple implementations with the same value forProtocolDescriptor.getVersion()are found, then the first implementation with the highest value forProtocolDescriptor.getWeight()will be loaded into the default collection.- Returns:
- available ProtocolCollection
- Since:
- 6
- See Also:
-
getProtocols
Returns the protocol collection consisting of the supported protocol versions and the additional protocol versions defined by theenableProtocolconnection string property.- Parameters:
enableProtocol- enable protocol connection property value, seeAttachmentProperties.getEnableProtocol().- Returns:
- supported protocols and the available additional protocols listed in
enableProtocol - Since:
- 6
-