All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.oracle.coherence.common.base.Associated Maven / Gradle / Ivy

/*
 * Copyright (c) 2000, 2020, Oracle and/or its affiliates.
 *
 * Licensed under the Universal Permissive License v 1.0 as shown at
 * http://oss.oracle.com/licenses/upl.
 */
package com.oracle.coherence.common.base;


/**
 * The Associated interface facilitates the creation of a very generic
 * 
 * equivalence relation between different objects and allows to group them
 * based on the equality of the "association key" object returned by the
 * {@link #getAssociatedKey} method.
 *
 * @param   the type of associated key
 *
 * @author gg 2012.03.11
 *
 * @see Associator
 */
public interface Associated
    {
    /**
     * Determine the host key (or base) object to which this object is associated.
     * 

* Note: It's expected that the returned object is suitable to be used * as an immutable identity (e.g. a key in a Map). *
* Note 2: Circular associations are not permitted. * * @return the host key that for this object, or null if this object has no * association */ public T getAssociatedKey(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy