@Override
        public <T> Registry mapPojo(Class<? super T> baseClass, Class<T> implClass)
        {
            if (strategy.pojoMapping.containsKey(baseClass))
                throw new IllegalArgumentException("Duplicate registration for: " + baseClass);

            BaseHS<?> wrapper = strategy.pojoMapping.get(implClass);
            if (wrapper == null)
                throw new IllegalArgumentException("Must register the impl class first. " + implClass);

            strategy.pojoMapping.put(baseClass, wrapper);

            return this;
        }
If you are sure that you are only using a single implementation of your interface/abstract class, then it
makes sense to map it directly to its impl class to avoid writing the type.
<p>
Note that the type is always written when your field is {@link java.lang.Object}.
<p>
Pojo ids start at 1.
protostuff-runtime-registry/src/main/java/io/protostuff/runtime/IncrementalIdStrategy.java