package <%= pkg %>.domain /** * Helper class for defining data transfer objects that will be passed around with the web tier. * * Since this class is annotated with [ValueObject] it's children will have a no-arg synthetic constructor automatically * generated by the the compiler. */ @ValueObject abstract class ValueObjectBase : IdentifiableValueObject { /** * Used as a bridge to get a complete copy from other languages that aren't Kotlin. * * @return DTO that is a complete copy as defined by the Kotlin data class' copy() method with no arguments */ abstract fun copyMe(): DTO }