X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;ds=sidebyside;f=src%2Fmain%2Fjava%2Forg%2Fyaz4j%2FConnectionExtended.java;h=12e30852bf224f6c83e88c9d07ce2787ac5d2530;hb=eb4350ae0b70918ff4e82456b3f37b07ead53682;hp=8d9744b742b2b09394caa0e7098af6058d4ddd49;hpb=428d895d6dc31b784e953ea935d662cfc4a4bd43;p=yaz4j-moved-to-github.git diff --git a/src/main/java/org/yaz4j/ConnectionExtended.java b/src/main/java/org/yaz4j/ConnectionExtended.java index 8d9744b..12e3085 100644 --- a/src/main/java/org/yaz4j/ConnectionExtended.java +++ b/src/main/java/org/yaz4j/ConnectionExtended.java @@ -4,22 +4,35 @@ import org.yaz4j.jni.SWIGTYPE_p_ZOOM_options_p; import org.yaz4j.jni.SWIGTYPE_p_ZOOM_package_p; import org.yaz4j.jni.yaz4jlib; -public class ConnectionExtended extends Connection -{ - public ConnectionExtended(String host, int port) - { - super(host, port); - } +/** + * Offers an interface to a subset of the Z39.50 extended services as well as a + * few privately defined ones. E.g, Z59.50 ILL, record update, database drop, + * create, commit. + * + * @see ZOOM Extended Services + * + * @author jakub + */ +public class ConnectionExtended extends Connection { - public Package Package(String type) - { - EnsureConnected(); - Package pack = null; - - SWIGTYPE_p_ZOOM_options_p options = yaz4jlib.ZOOM_options_create(); + public ConnectionExtended(String host, int port) { + super(host, port); + } - SWIGTYPE_p_ZOOM_package_p yazPackage = yaz4jlib.ZOOM_connection_package( zoomConnection, options); - pack = new Package(yazPackage, this, type); - return pack; + /** + * Creates an extended-services package for the connection. + * @param type type of package (operation) + * @return + */ + public Package getPackage(String type) { + if (closed) { + throw new IllegalStateException("Connection is closed."); } + Package pack = null; + SWIGTYPE_p_ZOOM_options_p options = yaz4jlib.ZOOM_options_create(); + SWIGTYPE_p_ZOOM_package_p yazPackage = yaz4jlib.ZOOM_connection_package( + zoomConnection, options); + pack = new Package(yazPackage, this, type); + return pack; + } }