com.fasterxml.jackson.annotation.SimpleObjectIdResolver Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of swagger-all Show documentation
Show all versions of swagger-all Show documentation
swagger-all is a rebundled verison of Swagger as one OSGi bundle.
package com.fasterxml.jackson.annotation;
import java.util.HashMap;
import java.util.Map;
import com.fasterxml.jackson.annotation.ObjectIdGenerator.IdKey;
/**
* Simple implementation of {@link ObjectIdResolver}
*
* @author Pascal Gélinas
*/
public class SimpleObjectIdResolver implements ObjectIdResolver {
private Map _items = new HashMap();
@Override
public void bindItem(IdKey id, Object ob)
{
if (_items.containsKey(id)) {
throw new IllegalStateException("Already had POJO for id (" + id.key.getClass().getName() + ") [" + id
+ "]");
}
_items.put(id, ob);
}
@Override
public Object resolveId(IdKey id)
{
return _items.get(id);
}
@Override
public boolean canUseFor(ObjectIdResolver resolverType)
{
return resolverType.getClass() == getClass();
}
@Override
public ObjectIdResolver newForDeserialization(Object context)
{
return this;
}
}