Bug Report: SturdyRef doesn't have expiration date

Eric Messick eric@syzygy.com
Thu, 14 Jan 1999 00:16:38 -0800


In message <4.1.19990112111530.009f31f0@ricochet.net>, "Mark S. Miller" <markm@caplet.com> wrote:
>The most obviously offending piece of code is this in Registrar:
>
>    /**
>     * Produce a SturdyRef for an object.
>     *
>     * @param obj The object for which a SturdyRef is desired
>     * @param expirationDate The date after which the SturdyRef will not
>     *   longer be guaranteed to be valid
>     *
>     * @return A new SturdyRef for the indicated object
>     */
>    public SturdyRef makeSturdyRef(Object obj, Date expirationDate) {
>        ObjectID objectID = register(obj, expirationDate);
>        return new SturdyRef(this, myProxyManager.searchPath(), objectID);
>    }
>
>Also, class SturdyRef declares no state for representing the expiration
>date.  However, EARL does have such state, and encodes/parses it to/from a
>cap: URI.  Was it omitted from SturdyRef for a reason, or should I just fix it?
>

My recollection is that the date is not remembered in SturdyRef
because the code to do the actual expiration wasn't implemented.  It's
not clear that that's a big deal.  I'd say just fix it.

Another question we considered along with this was if the date should
be in human readable format or not.  This is only interesting for
SturdyRef's that are passed around out of band (in email for example).
Probably better to just spit it out as an int and be done with it.

-eric