Function | Package: net.jlinker | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 10.1 Unrevised from 10.0 to 10.1. 10.0 version

## jlinker-slot

Arguments: key &optional value

The purpose of this function is to extract and modify data specific to one particular Lisp-Java connection. The first (required) argument, key, is a keyword that specifies the information accessed. If the second (optional) argument, value, is omitted or `nil`, the current value is returned; if the second argument is non-`nil`, it is stored.

The possible values of the key argument are:

- `:data`: this value is reserved for the application programmer. The purpose is to provide a place for application-specific data associated with a particular connection. There is an example of its use in examples/jlinker/applet/many-applets.cl.
- `:notifier`: this value causes jlinker-slot to return a Lisp process object when a connection is active or `nil` when there is no connection.
- `:lisp-call-error-p`: if a non-`nil` value for value is supplied, then subsequent calls from Java are affected: if a Lisp error occurs in a call from Java an error break will be taken; one of the restarts in that case is to return alternate values to Java. Since the error break ties up the Java/Lisp interface, this option should be used sparingly.

One use for this object is to pass it as an argument to jnotify-lisp. Another use is to detect a new jlinker connection. The data structure in `*jlinker-connection*` is re-used from one connection to the next, hence an eq test against a saved value will always return `t`.

The value in the `:notifier` slot is newly created for each connection and can therefore be compared with eq to a saved value to detect a new connection. Note and warning: calling jlinker-slot with a second non-`nil` argument will modify the value of the slot and will probably damage the current jlinker connection beyond repair.

The other values of the key argument are reserved for internal uses at this time.

See jlinker.htm for more information on the jLinker facility.

Copyright (c) 1998-2022, Franz Inc. Lafayette, CA., USA. All rights reserved.
This page was not revised from the 10.0 page.
Created 2019.8.20.

|  | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 10.1 Unrevised from 10.0 to 10.1. 10.0 version