Remove final flag from ResultPartitionWriter class

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Remove final flag from ResultPartitionWriter class

Chesnay Schepler-3
Hello all,

The final flag on the
org.apache.flink.runtime.io.network.api.writer.ResultPartitionWriter
class is causing issues for me.

The flag requires me to run a test I'm working on with a
@RunWith(PowerMockRunner.class) annotation so that i can use
@PrepareForTest({ResultPartitionWriter.class}).
But it breaks my TemporaryFolder annotated with @ClassRule. (apart from
that there also was a classloader issue, but i could resolve that)

To me these seem like unnecessary problems;  could we remove the flag,
or is there a good reason for it being there?

Regards,
Chesnay Schepler
Reply | Threaded
Open this post in threaded view
|

Re: Remove final flag from ResultPartitionWriter class

Ufuk Celebi-2

> On 08 Feb 2016, at 13:57, Chesnay Schepler <[hidden email]> wrote:
>
> Hello all,
>
> The final flag on the org.apache.flink.runtime.io.network.api.writer.ResultPartitionWriter class is causing issues for me.
>
> The flag requires me to run a test I'm working on with a @RunWith(PowerMockRunner.class) annotation so that i can use @PrepareForTest({ResultPartitionWriter.class}).
> But it breaks my TemporaryFolder annotated with @ClassRule. (apart from that there also was a classloader issue, but i could resolve that)
>
> To me these seem like unnecessary problems;  could we remove the flag, or is there a good reason for it being there?

Opinions differ, but one position goes like this: "Design and document for inheritance or else prohibit it”. ;-)

Since this is internal API anyways, I guess it’s OK to remove the final modifier.

– Ufuk