package com.netflix.schlep.serializer; /** * Abstraction on top of a configuration context that is meant to * be passed as a parameter using assisted inject. The purpose * of the mapper is to abstract out the configuration mechanism from * the implementation when a configuration must be passed into a * framework and the caller has no knowledge of which type is * supposed to be instantiated. * * @author elandau * */ public interface Mapper { /** * Construct an object. If using guice the concrete mapper may * choose to using the Injector for object instantiation. * * @param type * @return * @throws Exception */ public <T> T apply(T obj) throws Exception ; }