/* * Copyright (c) 2007, 2009, 2011, 2012, 2015 Eike Stepper (Berlin, Germany) and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Eike Stepper - initial API and implementation */ package org.eclipse.net4j.util.ref; import java.text.MessageFormat; /** * @author Eike Stepper */ public class KeyedStrongReference<K, T> implements KeyedReference<K, T> { private K key; private T ref; public KeyedStrongReference(K key, T ref) { this.key = key; this.ref = ref; } public ReferenceType getType() { return ReferenceType.STRONG; } public K getKey() { return key; } public T get() { return ref; } public void clear() { ref = null; } public boolean isEnqueued() { return false; } public boolean enqueue() { return false; } @Override public String toString() { return MessageFormat.format("KeyedStrongReference[{0} -> {1}]", key, ref); //$NON-NLS-1$ } }