/*
* Javolution - Java(TM) Solution for Real-Time and Embedded Systems
* Copyright (C) 2005 - Javolution (http://javolution.org/)
* All rights reserved.
*
* Permission to use, copy, modify, and distribute this software is
* freely granted, provided that this notice is preserved.
*/
package javolution37.javolution.lang;
/**
* This interface represents an object reference, the reachability level
* of a reference varies based on the actual reference implementation.
* Here are the reachability levels for some of Javolution
* references:
* - {@link javolution37.javolution.lang.PersistentReference PersistentReference} :
* Reachable accross multiple program executions.
* - {@link javolution37.javolution.realtime.LocalReference LocalReference} :
* Reachable only within the scope of the
* {@link javolution37.javolution.realtime.LocalContext LocalContext}
* where it has been set.
* - {@link javolution37.javolution.realtime.StackReference StackReference} :
* Reachable only within the scope of the
* {@link javolution37.javolution.realtime.PoolContext PoolContext}
* where it has been created (factory produced).
*
*
* @author Jean-Marie Dautelle
* @version 3.3, May 10, 2005
*/
public interface Reference {
/**
* Returns the value this reference referes to.
*
* @return the referent or null if not set.
*/
T get();
/**
* Sets the value this reference referes to.
*
* @param value the reference value.
*/
void set( T value);
}
Ads help maintain this website.