Class ProtocolCollection
- All Implemented Interfaces:
Iterable<ProtocolDescriptor>
In general use getDefaultCollection() to retrieve
the default collection.
- Since:
- 3.0
- Author:
- Mark Rotteveel
-
Method Summary
Modifier and TypeMethodDescriptionstatic ProtocolCollectioncreate(ProtocolDescriptor... descriptors) Creates a ProtocolCollection with the specified ProtocolDescriptors.static ProtocolCollectionReturns the default ProtocolCollection.intgetProtocolDescriptor(int protocolVersion) Get a list with the protocol versions in this collection.iterator()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
-
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
-
getDefaultCollection
Returns the default ProtocolCollection.The default ProtocolCollection is created when this class is loaded by the classloader.
This implementation uses the
ServiceLoaderto load the default 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:
- The default ProtocolCollection
- See Also:
-