X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fyaz4j%2FPackage.java;h=15635eb47b2510572bfb7b27f96f79c85a971358;hb=2caa42f8fcdbf463e7f8e94a9a9b9c578ffc2926;hp=5bd6461bc310d73627e956ce1c2a7f35d21098e9;hpb=2def7bc64faa1dfb9f3393f2c2ef0bca0c6265e1;p=yaz4j-moved-to-github.git diff --git a/src/main/java/org/yaz4j/Package.java b/src/main/java/org/yaz4j/Package.java index 5bd6461..15635eb 100644 --- a/src/main/java/org/yaz4j/Package.java +++ b/src/main/java/org/yaz4j/Package.java @@ -5,33 +5,53 @@ import org.yaz4j.jni.yaz4jlib; public class Package { - private SWIGTYPE_p_ZOOM_package_p pack = null; - private ConnectionExtended connection = null; - private String type; - - Package(SWIGTYPE_p_ZOOM_package_p pack, ConnectionExtended connection, String type) { - this.type = type; - this.connection = connection; - this.pack = pack; - } - - public void finalize() { - dispose(); - } - - public PackageOptionsCollection getPackageOptions() { - return new PackageOptionsCollection(pack); - } - - public void send() { - yaz4jlib.ZOOM_package_send(pack, type); - } - - public void dispose() { - if (pack != null) { - yaz4jlib.ZOOM_package_destroy(pack); - connection = null; - pack = null; - } + private SWIGTYPE_p_ZOOM_package_p pack; + private ConnectionExtended connection; + private String type; + + Package(SWIGTYPE_p_ZOOM_package_p pack, ConnectionExtended connection, + String type) { + this.type = type; + this.connection = connection; + this.pack = pack; + } + + public void finalize() { + _dispose(); + } + + /** + * Write option for a specified key + * @param key option name + * @param value option value + * @return package (self) for chainability + */ + public Package option(String key, String value) { + yaz4jlib.ZOOM_package_option_set(pack, key, value); + return this; + } + + /** + * Read option for a specified key. + * @param key option name + * @return option value + */ + public String option(String key) { + return yaz4jlib.ZOOM_package_option_get(pack, key); + } + + /** + * Send the package. + */ + public void send() { + yaz4jlib.ZOOM_package_send(pack, type); + } + + void _dispose() { + if (pack != null) { + yaz4jlib.ZOOM_package_destroy(pack); + connection = null; + pack = null; } + } }