I need to implement an interface (ResultSet
) having hundreds of methods. For now, I'm going to implement only a subset of these methods, throwing a NotImplementedError
for the others.
In Java I found two solutions:
- Create an abstract class
AbstractResultSet
implementingResultSet
, declaring all methods to throwNotImplementedError
. No hacks, but a lot of boilerplate code. - Use
Proxy.newProxyInstance
to implement all methods together in theInvocationHandler
. Less code but also less immediate to use for other coders.
Is there a third option in Kotlin?
In my case, I need to implement a a ResultSet
over an IBM dataset (with packed decimals, binary fields, zoned numbers, rows with variable length, etc.) to import it in a SQLServer via SQLServerBulkCopy
. I don't know which ResultSet
methods are called by this class, so, for now, I'm going to implement only the "most used" methods, logging the calls to unimplemented method.
Aucun commentaire:
Enregistrer un commentaire