blob: 3c38205aaeb741fb290717696648c0eeae0d58fe [file] [log] [blame]
package net.onrc.onos.core.util;
import net.onrc.onos.core.registry.IdBlock;
/**
* An interface that gives unique ID spaces.
*/
public interface IdBlockAllocator {
/**
* Allocates a unique Id Block.
*
* @return Id Block.
*/
IdBlock allocateUniqueIdBlock();
/**
* Allocates next unique id and retrieve a new range of ids if needed.
*
* @param range range to use for the identifier
* @return Id Block.
*/
IdBlock allocateUniqueIdBlock(long range);
}