Blake Bender created GEODE-7009:
-----------------------------------
Summary: Eliminate friend relationship between FunctionService and
Execution classes
Key: GEODE-7009
URL: https://issues.apache.org/jira/browse/GEODE-7009
Project: Geode
Issue Type: Improvement
Components: native client
Reporter: Blake Bender
These classes are friends of each other, and the reasons why aren't
particularly compelling, so that needs to end. First, there is no reason at
all why Execution declares FunctionService as a friend class, so that
declaration can simply be deleted. FunctionService declares Execution as a
friend because it needs to allocate instances of Execution, and Execution's
only constructor is private. A better way to do this would be to make the
Execution class simply be an interface, push any code in Execution down into
ExecutionImpl, and have FunctionService instantiate ExecutionImpl directly and
hand those out. ExecutionImpl is a private class, so its constructor doesn't
have to be private, thus FunctionService can allocate an ExecutionImpl without
being a friend class.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)