geode-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (GEODE-3256) Refactor DataCommands
Date Tue, 01 Aug 2017 17:31:00 GMT

    [ https://issues.apache.org/jira/browse/GEODE-3256?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16109365#comment-16109365
] 

ASF GitHub Bot commented on GEODE-3256:
---------------------------------------

Github user jaredjstewart commented on a diff in the pull request:

    https://github.com/apache/geode/pull/672#discussion_r130673499
  
    --- Diff: geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DataCommandsUtils.java
---
    @@ -0,0 +1,311 @@
    +/*
    + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
    + * agreements. See the NOTICE file distributed with this work for additional information
regarding
    + * copyright ownership. The ASF licenses this file to You under the Apache License, Version
2.0 (the
    + * "License"); you may not use this file except in compliance with the License. You may
obtain a
    + * copy of the License at
    + *
    + * http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * Unless required by applicable law or agreed to in writing, software distributed under
the License
    + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
either express
    + * or implied. See the License for the specific language governing permissions and limitations
under
    + * the License.
    + */
    +
    +package org.apache.geode.management.internal.cli.commands;
    +
    +import java.util.ArrayList;
    +import java.util.HashSet;
    +import java.util.Iterator;
    +import java.util.List;
    +import java.util.Set;
    +import java.util.StringTokenizer;
    +
    +import org.apache.commons.collections.CollectionUtils;
    +import org.apache.commons.lang.StringUtils;
    +
    +import org.apache.geode.LogWriter;
    +import org.apache.geode.cache.Region;
    +import org.apache.geode.cache.execute.FunctionService;
    +import org.apache.geode.cache.execute.ResultCollector;
    +import org.apache.geode.distributed.DistributedMember;
    +import org.apache.geode.internal.cache.InternalCache;
    +import org.apache.geode.management.DistributedRegionMXBean;
    +import org.apache.geode.management.ManagementService;
    +import org.apache.geode.management.cli.Result;
    +import org.apache.geode.management.internal.MBeanJMXAdapter;
    +import org.apache.geode.management.internal.cli.CliUtil;
    +import org.apache.geode.management.internal.cli.LogWrapper;
    +import org.apache.geode.management.internal.cli.domain.DataCommandRequest;
    +import org.apache.geode.management.internal.cli.domain.DataCommandResult;
    +import org.apache.geode.management.internal.cli.functions.DataCommandFunction;
    +import org.apache.geode.management.internal.cli.i18n.CliStrings;
    +import org.apache.geode.management.internal.cli.result.CompositeResultData;
    +import org.apache.geode.management.internal.cli.result.ResultBuilder;
    +import org.apache.geode.management.internal.cli.result.TabularResultData;
    +
    +public class DataCommandsUtils {
    --- End diff --
    
    I tend to try to avoid `---Utils` classes, as they often end up as a bag of unrelated
methods rather than a true object-oriented class with a single responsibility.  I'm not sure
where all of these methods belong in this case though, and I think this is certainly a step
in the right direction from the old `DataCommands` monolith.


> Refactor DataCommands
> ---------------------
>
>                 Key: GEODE-3256
>                 URL: https://issues.apache.org/jira/browse/GEODE-3256
>             Project: Geode
>          Issue Type: Sub-task
>          Components: gfsh
>            Reporter: Emily Yeh
>            Assignee: Emily Yeh
>
> {{DataCommands.java}} is a large class that contains multiple commands. Each command
should be refactored into a separate class, and the methods shared by the commands should
be refactored into a new and appropriately named class of their own.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message