Is this example still valid?  Looking at protostream it appears only readFrom and writeTo are defined on the interface.  Seems getTypeName and getJavaClass were artifacts of a previous implementation?