db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rick Hillegas (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-2412) Refactor NetworkServerControlImpl
Date Mon, 19 Mar 2007 15:28:32 GMT

    [ https://issues.apache.org/jira/browse/DERBY-2412?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12482116
] 

Rick Hillegas commented on DERBY-2412:
--------------------------------------

Thanks for tackling this refactoring, Bernt. I think that your proposed classes are a useful
abstraction. They help to tease apart a lot of functionality which is all jumbled together
today.

I have a small comment about how the new classes handle command args. The old command arg
handling was pretty brittle, I thought. It would be better if there were a CommandArg class
which encapsulated all of the bits of a command arg, e.g., its user-visible name, how many
parameters it requires, and the manifest constant it maps to and which is used by the switch
statements. I think that this re-factoring has made the handling of command args a bit more
brittle. Now the manifest constants live in one class (NetworkAdminProtocol) and the user-visible
name and parameter counts live in another class (NetworkAdminClient).

> Refactor NetworkServerControlImpl
> ---------------------------------
>
>                 Key: DERBY-2412
>                 URL: https://issues.apache.org/jira/browse/DERBY-2412
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Server
>            Reporter: Bernt M. Johnsen
>         Assigned To: Bernt M. Johnsen
>            Priority: Minor
>         Attachments: derby-2412-v1.diff, derby-2412-v1.stat
>
>
> NetworkServerControlImpl is overly complex and serves several purposes. This makes it
hard to penetrate the logic, to debug and to maintain. 
> I propose (actually, I've alread done a whole lot) to tear it apart and move the current
semantics into the following new classes:
> NetworkServer - the actual network server code
> NetworkAdminServer - the implementation of network administration commands (ping, shutdown
etc)
> NetworkAdminClient - the client for network administration of Derby
> NetworkAdminProtocol - the administration command protocol (as opposed to the DRDA protocol)
> plus a couple of utility classes (common methods, common constants, error messaging,
exceptions etc)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message