net.sf.javagimmicks.collections.transformer.TransformingRingCursor Maven / Gradle / Ivy
/**
*
*/
package net.sf.javagimmicks.collections.transformer;
import net.sf.javagimmicks.collections.AbstractRingCursor;
import net.sf.javagimmicks.collections.RingCursor;
import net.sf.javagimmicks.transform.Transformer;
import net.sf.javagimmicks.transform.Transforming;
class TransformingRingCursor
extends AbstractRingCursor
implements Transforming
{
protected final RingCursor _internalRingCursor;
private final Transformer _transformer;
/**
* @deprecated Use TranformerUtils.decorate() instead
*/
@Deprecated
public TransformingRingCursor(RingCursor ringCursor, Transformer transformer)
{
_internalRingCursor = ringCursor;
_transformer = transformer;
}
public Transformer getTransformer()
{
return _transformer;
}
public int size()
{
return _internalRingCursor.size();
}
public T get()
{
return getTransformer().transform(_internalRingCursor.get());
}
public void insertAfter(T value)
{
throw new UnsupportedOperationException();
}
public void insertBefore(T value)
{
throw new UnsupportedOperationException();
}
public T next()
{
return getTransformer().transform(_internalRingCursor.next());
}
public T previous()
{
return getTransformer().transform(_internalRingCursor.previous());
}
public T remove()
{
return getTransformer().transform(_internalRingCursor.remove());
}
public RingCursor cursor()
{
return TransformerUtils.decorate(_internalRingCursor.cursor(), getTransformer());
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy