Commit d5bd0ff3 authored by chiaming2000's avatar chiaming2000
Browse files

Protocol 3.0.0 support for hmac authentication.

Admin feature changes related to SetUp, Pin Operations are not supported
in this commit. All admin test cases related to SetUp, Pin Ops, etc are
disabled temporarily until they are updated in the Java API and
simulator implementation.

This change/commit is incremental so that all parties can start testing
against Hmac authentication changes with this commit branch.
parent 49ab6a54
Loading
Loading
Loading
Loading
+85 −72
Original line number Diff line number Diff line
@@ -38,14 +38,14 @@ import com.google.protobuf.ByteString;
import com.seagate.kinetic.admin.impl.JsonUtil;
import com.seagate.kinetic.client.internal.MessageFactory;
import com.seagate.kinetic.common.lib.KineticMessage;
import com.seagate.kinetic.proto.Kinetic.Message;
import com.seagate.kinetic.proto.Kinetic.Message.Builder;
import com.seagate.kinetic.proto.Kinetic.Message.GetLog;
import com.seagate.kinetic.proto.Kinetic.Message.GetLog.Type;
import com.seagate.kinetic.proto.Kinetic.Message.Header;
import com.seagate.kinetic.proto.Kinetic.Message.MessageType;
import com.seagate.kinetic.proto.Kinetic.Message.Security;
import com.seagate.kinetic.proto.Kinetic.Message.Status.StatusCode;
import com.seagate.kinetic.proto.Kinetic.Command;

import com.seagate.kinetic.proto.Kinetic.Command.GetLog;
import com.seagate.kinetic.proto.Kinetic.Command.GetLog.Type;
import com.seagate.kinetic.proto.Kinetic.Command.Header;
import com.seagate.kinetic.proto.Kinetic.Command.MessageType;
import com.seagate.kinetic.proto.Kinetic.Command.Security;
import com.seagate.kinetic.proto.Kinetic.Command.Status.StatusCode;

/**
 *
@@ -150,13 +150,14 @@ public class KineticAdminCLI {

        KineticMessage km = MessageFactory.createKineticMessageWithBuilder();

        Message.Builder request = (Builder) km.getMessage();
        Command.Builder commandBuilder = (Command.Builder) km.getCommand();

        Header.Builder header = request.getCommandBuilder().getHeaderBuilder();
        Header.Builder header = commandBuilder.getHeaderBuilder();
        header.setMessageType(MessageType.SECURITY);
        Security security = JsonUtil.parseSecurity(ByteString.copyFrom(content)
                .toStringUtf8());
        request.getCommandBuilder().getBodyBuilder().setSecurity(security);
        
        commandBuilder.getBodyBuilder().setSecurity(security);

        return kineticClient.request(km);
    }
@@ -180,36 +181,38 @@ public class KineticAdminCLI {
     */
    public KineticMessage getLog(String type) throws KineticException {
        KineticMessage km = MessageFactory.createKineticMessageWithBuilder();
        Message.Builder request = (Builder) km.getMessage();
        Header.Builder header = request.getCommandBuilder().getHeaderBuilder();
        
        Command.Builder commandBuilder = (Command.Builder) km.getCommand();
        
        Header.Builder header = commandBuilder.getHeaderBuilder();
        header.setMessageType(MessageType.GETLOG);
        GetLog.Builder getLog = request.getCommandBuilder().getBodyBuilder()
        GetLog.Builder getLog = commandBuilder.getBodyBuilder()
                .getGetLogBuilder();

        validateLogType(type);
        if (type.equalsIgnoreCase(ALL)) {
            getLog.addType(Type.UTILIZATIONS);
            getLog.addType(Type.CAPACITIES);
            getLog.addType(Type.TEMPERATURES);
            getLog.addType(Type.CONFIGURATION);
            getLog.addType(Type.MESSAGES);
            getLog.addType(Type.STATISTICS);
            getLog.addType(Type.LIMITS);
            getLog.addTypes(Type.UTILIZATIONS);
            getLog.addTypes(Type.CAPACITIES);
            getLog.addTypes(Type.TEMPERATURES);
            getLog.addTypes(Type.CONFIGURATION);
            getLog.addTypes(Type.MESSAGES);
            getLog.addTypes(Type.STATISTICS);
            getLog.addTypes(Type.LIMITS);

        } else if (type.equalsIgnoreCase(UTILIZATION)) {
            getLog.addType(Type.UTILIZATIONS);
            getLog.addTypes(Type.UTILIZATIONS);
        } else if (type.equalsIgnoreCase(CAPACITY)) {
            getLog.addType(Type.CAPACITIES);
            getLog.addTypes(Type.CAPACITIES);
        } else if (type.equalsIgnoreCase(TEMPERATURE)) {
            getLog.addType(Type.TEMPERATURES);
            getLog.addTypes(Type.TEMPERATURES);
        } else if (type.equalsIgnoreCase(CONFIGURATION)) {
            getLog.addType(Type.CONFIGURATION);
            getLog.addTypes(Type.CONFIGURATION);
        } else if (type.equalsIgnoreCase(MESSAGES)) {
            getLog.addType(Type.MESSAGES);
            getLog.addTypes(Type.MESSAGES);
        } else if (type.equalsIgnoreCase(STATISTICS)) {
            getLog.addType(Type.STATISTICS);
            getLog.addTypes(Type.STATISTICS);
        } else if (type.equalsIgnoreCase(LIMITS)) {
            getLog.addType(Type.LIMITS);
            getLog.addTypes(Type.LIMITS);
        }else {
            throw new IllegalArgumentException(
                    "Type should be utilization, capacity, temperature, configuration, message, statistic, limits or all");
@@ -224,31 +227,32 @@ public class KineticAdminCLI {
            String newClusterVersion, String erase) throws KineticException {

        KineticMessage km = MessageFactory.createKineticMessageWithBuilder();
        Message.Builder request = (Builder) km.getMessage();
        Command.Builder commandBuilder = (Command.Builder) km.getCommand();

        Header.Builder header = request.getCommandBuilder().getHeaderBuilder();
        Header.Builder header = commandBuilder.getHeaderBuilder();
        header.setMessageType(MessageType.SETUP);
        com.seagate.kinetic.proto.Kinetic.Message.Setup.Builder setup = com.seagate.kinetic.proto.Kinetic.Message.Setup
        com.seagate.kinetic.proto.Kinetic.Command.Setup.Builder setup = com.seagate.kinetic.proto.Kinetic.Command.Setup
                .newBuilder();
        if (pin != null) {
            setup.setPin(ByteString.copyFromUtf8(pin));
        }
        
        if (setPin != null) {
            setup.setSetPin(ByteString.copyFromUtf8(setPin));
        }
//        if (pin != null) {
//            setup.setPin(ByteString.copyFromUtf8(pin));
//        }

//        if (setPin != null) {
//            setup.setSetPin(ByteString.copyFromUtf8(setPin));
//        }

        if (newClusterVersion != null) {
            validateClusterVersion(newClusterVersion);
            setup.setNewClusterVersion(Long.parseLong(newClusterVersion));
        }

        if (erase != null) {
            validateErase(erase);
            setup.setInstantSecureErase(Boolean.parseBoolean(erase));
        }
//        if (erase != null) {
//            validateErase(erase);
//            setup.setInstantSecureErase(Boolean.parseBoolean(erase));
//        }

        request.getCommandBuilder().getBodyBuilder().setSetup(setup);
        commandBuilder.getBodyBuilder().setSetup(setup);

        return kineticClient.request(km);
    }
@@ -259,19 +263,25 @@ public class KineticAdminCLI {

        KineticMessage km = MessageFactory.createKineticMessageWithBuilder();

        Message.Builder request = (Builder) km.getMessage();
        Command.Builder commandBuilder = (Command.Builder) km.getCommand();

        Header.Builder header = request.getCommandBuilder().getHeaderBuilder();
        Header.Builder header = commandBuilder.getHeaderBuilder();
        header.setMessageType(MessageType.SETUP);
        com.seagate.kinetic.proto.Kinetic.Message.Setup.Builder setup = com.seagate.kinetic.proto.Kinetic.Message.Setup
        
        com.seagate.kinetic.proto.Kinetic.Command.Setup.Builder setup = com.seagate.kinetic.proto.Kinetic.Command.Setup
                .newBuilder();
        if (pin != null) {
            setup.setPin(ByteString.copyFromUtf8(pin));
        }
      
        /**
         * XXX: protocol-3.0.0
         */
        
//        if (pin != null) {
//            setup.setPin(ByteString.copyFromUtf8(pin));
//        }

        setup.setFirmwareDownload(true);

        request.getCommandBuilder().getBodyBuilder().setSetup(setup);
        commandBuilder.getBodyBuilder().setSetup(setup);

        if (null != content && content.length > 0) {
            km.setValue(content);
@@ -321,32 +331,35 @@ public class KineticAdminCLI {
    /*
     * handle the response to print
     */
    public void printResponse(Message response) {
        if (null == response) {
    public void printResponse(KineticMessage km) {
        
        if (null == km) {
            return;
        }

        MessageType messageType = response.getCommand().getHeader()
        MessageType messageType = km.getCommand().getHeader()
                .getMessageType();
        StatusCode statusCode = response.getCommand().getStatus().getCode();
        
        StatusCode statusCode = km.getCommand().getStatus().getCode();
        
        if (messageType.equals(MessageType.SETUP_RESPONSE)
                || messageType.equals(MessageType.SECURITY_RESPONSE)) {
            if (statusCode.equals(StatusCode.SUCCESS)) {
                System.out.println(StatusCode.SUCCESS);
            } else {
                System.err.println(response.getCommand().getStatus().getCode());
                System.err.println(response.getCommand().getStatus()
                System.err.println(km.getCommand().getStatus().getCode());
                System.err.println(km.getCommand().getStatus()
                        .getStatusMessage());
            }

        } else if (messageType.equals(MessageType.GETLOG_RESPONSE)) {
            if (statusCode.equals(StatusCode.SUCCESS)) {
                System.out.println(StatusCode.SUCCESS);
                System.out.print(response.getCommand().getBody().getGetLog()
                System.out.print(km.getCommand().getBody().getGetLog()
                        .toString());
            } else {
                System.err.println(response.getCommand().getStatus().getCode());
                System.err.println(response.getCommand().getStatus()
                System.err.println(km.getCommand().getStatus().getCode());
                System.err.println(km.getCommand().getStatus()
                        .getDetailedMessage().toStringUtf8());
            }

@@ -401,14 +414,14 @@ public class KineticAdminCLI {
                String erase = kineticAdminCLI.getArgValue("-erase", args);
                response = kineticAdminCLI.setup(pin, setPin,
                        newClusterVersion, erase);
                kineticAdminCLI.printResponse((Message) response.getMessage());
                kineticAdminCLI.printResponse(response);

            } else if (args[0].equalsIgnoreCase("-security")) {
                initAdminClient(args, kineticAdminCLI);

                String file = kineticAdminCLI.getArgValue("-security", args);
                response = kineticAdminCLI.security(file);
                kineticAdminCLI.printResponse((Message) response.getMessage());
                kineticAdminCLI.printResponse(response);

            } else if (args[0].equalsIgnoreCase("-getlog")) {
                initAdminClient(args, kineticAdminCLI);
@@ -416,7 +429,7 @@ public class KineticAdminCLI {
                String type = kineticAdminCLI.getArgValue("-type", args);
                type = type == null ? ALL : type;
                response = kineticAdminCLI.getLog(type);
                kineticAdminCLI.printResponse((Message) response.getMessage());
                kineticAdminCLI.printResponse(response);

            } else if (args[0].equalsIgnoreCase("-firmware")) {
                initAdminClient(args, kineticAdminCLI);
@@ -425,7 +438,7 @@ public class KineticAdminCLI {
                String firmwareFile = kineticAdminCLI.getArgValue("-firmware",
                        args);
                response = kineticAdminCLI.firmwareDownload(pin, firmwareFile);
                kineticAdminCLI.printResponse((Message) response.getMessage());
                kineticAdminCLI.printResponse(response);

            } else {
                printHelp();
+159 −156

File changed.

Preview size limit exceeded, changes collapsed.

+23 −19
Original line number Diff line number Diff line
@@ -33,22 +33,26 @@ import kinetic.admin.Temperature;
import kinetic.admin.Utilization;
import kinetic.client.KineticException;

import com.seagate.kinetic.proto.Kinetic.Message;
import com.seagate.kinetic.common.lib.KineticMessage;


public class DefaultKineticLog implements KineticLog {
    private Message response = null;
    //private Message response = null;
    
    private KineticMessage response = null;

    public DefaultKineticLog(Message response) {
        this.response = response;
    public DefaultKineticLog(KineticMessage km) {
        this.response = km;
    }

    @Override
    public List<Utilization> getUtilization() throws KineticException {
        validate(response);
        
        validate(this.response);

        List<Utilization> utils = new ArrayList<Utilization>();
        List<com.seagate.kinetic.proto.Kinetic.Message.GetLog.Utilization> utilizations = response
                .getCommand().getBody().getGetLog().getUtilizationList();
        List<com.seagate.kinetic.proto.Kinetic.Command.GetLog.Utilization> utilizations = response
                .getCommand().getBody().getGetLog().getUtilizationsList();
        if (null == utilizations || utilizations.isEmpty()
                || 0 == utilizations.size()) {
            throw new KineticException(
@@ -71,8 +75,8 @@ public class DefaultKineticLog implements KineticLog {
        validate(response);

        List<Temperature> temps = new ArrayList<Temperature>();
        List<com.seagate.kinetic.proto.Kinetic.Message.GetLog.Temperature> Temperatures = response
                .getCommand().getBody().getGetLog().getTemperatureList();
        List<com.seagate.kinetic.proto.Kinetic.Command.GetLog.Temperature> Temperatures = response
                .getCommand().getBody().getGetLog().getTemperaturesList();
        if (null == Temperatures || Temperatures.isEmpty()
                || 0 == Temperatures.size()) {
            throw new KineticException(
@@ -111,7 +115,7 @@ public class DefaultKineticLog implements KineticLog {
    public Capacity getCapacity() throws KineticException {
        validate(response);

        com.seagate.kinetic.proto.Kinetic.Message.GetLog.Capacity capacity = response
        com.seagate.kinetic.proto.Kinetic.Command.GetLog.Capacity capacity = response
                .getCommand().getBody().getGetLog().getCapacity();

        if (null == response.getCommand().getBody().getGetLog().getCapacity()) {
@@ -132,7 +136,7 @@ public class DefaultKineticLog implements KineticLog {
        return capacInfo;
    }

    private void validate(Message response) throws KineticException {
    private void validate(KineticMessage response) throws KineticException {
        if (null == response) {
            throw new KineticException(
                    "Response message error: response is null");
@@ -164,8 +168,8 @@ public class DefaultKineticLog implements KineticLog {

        validate(response);

        List<com.seagate.kinetic.proto.Kinetic.Message.GetLog.Type> typeOfList = response
                .getCommand().getBody().getGetLog().getTypeList();
        List<com.seagate.kinetic.proto.Kinetic.Command.GetLog.Type> typeOfList = response
                .getCommand().getBody().getGetLog().getTypesList();

        if (null == typeOfList || typeOfList.isEmpty()
                || 0 == typeOfList.size()) {
@@ -236,7 +240,7 @@ public class DefaultKineticLog implements KineticLog {

        validate(response);

        com.seagate.kinetic.proto.Kinetic.Message.GetLog.Configuration configuration = response
        com.seagate.kinetic.proto.Kinetic.Command.GetLog.Configuration configuration = response
                .getCommand().getBody().getGetLog().getConfiguration();

        if (null == response.getCommand().getBody().getGetLog()
@@ -254,12 +258,12 @@ public class DefaultKineticLog implements KineticLog {

        List<Interface> interfaces = new ArrayList<Interface>();

        List<com.seagate.kinetic.proto.Kinetic.Message.GetLog.Configuration.Interface> interfacesFromResponse = configuration
        List<com.seagate.kinetic.proto.Kinetic.Command.GetLog.Configuration.Interface> interfacesFromResponse = configuration
                .getInterfaceList();
        if (null != interfacesFromResponse
                && (!interfacesFromResponse.isEmpty())
                && 0 != interfacesFromResponse.size()) {
            for (com.seagate.kinetic.proto.Kinetic.Message.GetLog.Configuration.Interface interfaceFromMessage : interfacesFromResponse) {
            for (com.seagate.kinetic.proto.Kinetic.Command.GetLog.Configuration.Interface interfaceFromMessage : interfacesFromResponse) {
                Interface interfaceInfo = new Interface();

                if (interfaceFromMessage.hasIpv4Address()) {
@@ -341,7 +345,7 @@ public class DefaultKineticLog implements KineticLog {
    public List<Statistics> getStatistics() throws KineticException {
        validate(response);

        List<com.seagate.kinetic.proto.Kinetic.Message.GetLog.Statistics> statisticsOfMessageList = response
        List<com.seagate.kinetic.proto.Kinetic.Command.GetLog.Statistics> statisticsOfMessageList = response
                .getCommand().getBody().getGetLog().getStatisticsList();

        if (null == response.getCommand().getBody().getGetLog()
@@ -352,7 +356,7 @@ public class DefaultKineticLog implements KineticLog {

        List<Statistics> statisticOfList = new ArrayList<Statistics>();

        for (com.seagate.kinetic.proto.Kinetic.Message.GetLog.Statistics statistics : statisticsOfMessageList) {
        for (com.seagate.kinetic.proto.Kinetic.Command.GetLog.Statistics statistics : statisticsOfMessageList) {
            Statistics statisticsInfo = new Statistics();
            if (statistics.hasBytes()) {
                statisticsInfo.setBytes(statistics.getBytes());
@@ -410,7 +414,7 @@ public class DefaultKineticLog implements KineticLog {
    public Limits getLimits() throws KineticException {
        validate(response);

        com.seagate.kinetic.proto.Kinetic.Message.GetLog.Limits limits = response
        com.seagate.kinetic.proto.Kinetic.Command.GetLog.Limits limits = response
                .getCommand().getBody().getGetLog().getLimits();

        if (null == response.getCommand().getBody().getGetLog().getLimits()) {
+40 −30
Original line number Diff line number Diff line
@@ -25,9 +25,9 @@ import kinetic.admin.Domain;

import com.google.gson.Gson;
import com.google.protobuf.ByteString;
import com.seagate.kinetic.proto.Kinetic.Message.GetLog.Type;
import com.seagate.kinetic.proto.Kinetic.Message.Security.ACL.HMACAlgorithm;
import com.seagate.kinetic.proto.Kinetic.Message.Security.ACL.Permission;
import com.seagate.kinetic.proto.Kinetic.Command.GetLog.Type;
import com.seagate.kinetic.proto.Kinetic.Command.Security.ACL.HMACAlgorithm;
import com.seagate.kinetic.proto.Kinetic.Command.Security.ACL.Permission;

/**
 *
@@ -41,17 +41,17 @@ public class JsonUtil {
    /*
     * change Json to message security
     */
    public static final com.seagate.kinetic.proto.Kinetic.Message.Security parseSecurity(
    public static final com.seagate.kinetic.proto.Kinetic.Command.Security parseSecurity(
            String content) {
        Gson gson = new Gson();
        Security security = gson.fromJson(content, Security.class);

        com.seagate.kinetic.proto.Kinetic.Message.Security.Builder retSecurityBuilder = com.seagate.kinetic.proto.Kinetic.Message.Security
        com.seagate.kinetic.proto.Kinetic.Command.Security.Builder retSecurityBuilder = com.seagate.kinetic.proto.Kinetic.Command.Security
                .newBuilder();
        com.seagate.kinetic.proto.Kinetic.Message.Security.ACL.Builder retAclBuilder = null;
        com.seagate.kinetic.proto.Kinetic.Message.Security.ACL.Scope.Builder retDomainBuilder = null;
        com.seagate.kinetic.proto.Kinetic.Command.Security.ACL.Builder retAclBuilder = null;
        com.seagate.kinetic.proto.Kinetic.Command.Security.ACL.Scope.Builder retDomainBuilder = null;
        for (ACL acl : security.getAcl()) {
            retAclBuilder = com.seagate.kinetic.proto.Kinetic.Message.Security.ACL
            retAclBuilder = com.seagate.kinetic.proto.Kinetic.Command.Security.ACL
                    .newBuilder();
            retAclBuilder.setIdentity(acl.getUserId());
            if (null == acl.getAlgorithm() || acl.getAlgorithm().isEmpty()) {
@@ -62,7 +62,7 @@ public class JsonUtil {
            }
            retAclBuilder.setKey(ByteString.copyFromUtf8(acl.getKey()));
            for (Domain domain : acl.getDomains()) {
                retDomainBuilder = com.seagate.kinetic.proto.Kinetic.Message.Security.ACL.Scope
                retDomainBuilder = com.seagate.kinetic.proto.Kinetic.Command.Security.ACL.Scope
                        .newBuilder();
                retDomainBuilder.setOffset(domain.getOffset());
                retDomainBuilder.setValue(ByteString.copyFromUtf8(domain
@@ -82,17 +82,22 @@ public class JsonUtil {
    /*
     * change Json to message setup
     */
    public static final com.seagate.kinetic.proto.Kinetic.Message.Setup parseSetup(
    public static final com.seagate.kinetic.proto.Kinetic.Command.Setup parseSetup(
            String content) {
        Gson gson = new Gson();
        Setup setup = gson.fromJson(content, Setup.class);

        com.seagate.kinetic.proto.Kinetic.Message.Setup.Builder retSetupBuilder = com.seagate.kinetic.proto.Kinetic.Message.Setup
        com.seagate.kinetic.proto.Kinetic.Command.Setup.Builder retSetupBuilder = com.seagate.kinetic.proto.Kinetic.Command.Setup
                .newBuilder();
        
        retSetupBuilder.setNewClusterVersion(setup.getNewClusterVersion());
        retSetupBuilder.setPin(ByteString.copyFromUtf8(setup.getPin()));
        retSetupBuilder.setSetPin(ByteString.copyFromUtf8(setup.getSetPin()));
        retSetupBuilder.setInstantSecureErase(setup.isInstantSecureErase());
        
        /**
         * XXX: protocol-3.0.0
         */
        //retSetupBuilder.setPin(ByteString.copyFromUtf8(setup.getPin()));
        //retSetupBuilder.setSetPin(ByteString.copyFromUtf8(setup.getSetPin()));
        //retSetupBuilder.setInstantSecureErase(setup.isInstantSecureErase());

        return retSetupBuilder.build();
    }
@@ -100,15 +105,15 @@ public class JsonUtil {
    /*
     * change Json to message getlog
     */
    public static final com.seagate.kinetic.proto.Kinetic.Message.GetLog parseGetLog(
    public static final com.seagate.kinetic.proto.Kinetic.Command.GetLog parseGetLog(
            String content) {
        Gson gson = new Gson();
        GetLog getLog = gson.fromJson(content, GetLog.class);

        com.seagate.kinetic.proto.Kinetic.Message.GetLog.Builder retGetLogBuilder = com.seagate.kinetic.proto.Kinetic.Message.GetLog
        com.seagate.kinetic.proto.Kinetic.Command.GetLog.Builder retGetLogBuilder = com.seagate.kinetic.proto.Kinetic.Command.GetLog
                .newBuilder();
        for (Type type : getLog.getType()) {
            retGetLogBuilder.addType(type);
            retGetLogBuilder.addTypes(type);
        }
        return retGetLogBuilder.build();
    }
@@ -117,14 +122,19 @@ public class JsonUtil {
     * change message setup to Json class
     */
    public static String toJson(
            com.seagate.kinetic.proto.Kinetic.Message.Setup setup) {
            com.seagate.kinetic.proto.Kinetic.Command.Setup setup) {
        Gson gson = new Gson();

        Setup mySetup = new Setup();
        mySetup.setInstantSecureErase(setup.getInstantSecureErase());
        
        /**
         * XXX: protocol-3.0.0
         */
        
        //mySetup.setInstantSecureErase(setup.getInstantSecureErase());
        mySetup.setNewClusterVersion(setup.getNewClusterVersion());
        mySetup.setPin(setup.getPin().toStringUtf8());
        mySetup.setSetPin(setup.getSetPin().toStringUtf8());
        //mySetup.setPin(setup.getPin().toStringUtf8());
        //mySetup.setSetPin(setup.getSetPin().toStringUtf8());

        return gson.toJson(mySetup, Setup.class);
    }
@@ -133,11 +143,11 @@ public class JsonUtil {
     * change message getlog to Json class
     */
    public static String toJson(
            com.seagate.kinetic.proto.Kinetic.Message.GetLog getLog) {
            com.seagate.kinetic.proto.Kinetic.Command.GetLog getLog) {
        Gson gson = new Gson();

        GetLog myGetLog = new GetLog();
        myGetLog.setType(getLog.getTypeList());
        myGetLog.setType(getLog.getTypesList());

        return gson.toJson(myGetLog, GetLog.class);
    }
@@ -146,7 +156,7 @@ public class JsonUtil {
     * change message security to Json class
     */
    public static String toJson(
            com.seagate.kinetic.proto.Kinetic.Message.Security security) {
            com.seagate.kinetic.proto.Kinetic.Command.Security security) {
        Gson gson = new Gson();

        Security mySecurity = new Security();
@@ -154,7 +164,7 @@ public class JsonUtil {
        Domain myDomain = null;
        List<ACL> myAclList = new ArrayList<ACL>();
        List<Domain> myDomainList = null;
        for (com.seagate.kinetic.proto.Kinetic.Message.Security.ACL acl : security
        for (com.seagate.kinetic.proto.Kinetic.Command.Security.ACL acl : security
                .getAclList()) {
            myAcl = new ACL();
            // myAcl.setAlgorithm(acl.getAlgorithmName());
@@ -164,7 +174,7 @@ public class JsonUtil {

            myDomainList = new ArrayList<Domain>();
            List<kinetic.admin.Role> roleList = null;
            for (com.seagate.kinetic.proto.Kinetic.Message.Security.ACL.Scope domain : acl
            for (com.seagate.kinetic.proto.Kinetic.Command.Security.ACL.Scope domain : acl
                    .getScopeList()) {
                myDomain = new Domain();
                roleList = new ArrayList<kinetic.admin.Role>();
@@ -201,14 +211,14 @@ class Security {
}

class GetLog {
    private List<com.seagate.kinetic.proto.Kinetic.Message.GetLog.Type> type;
    private List<com.seagate.kinetic.proto.Kinetic.Command.GetLog.Type> type;

    public List<com.seagate.kinetic.proto.Kinetic.Message.GetLog.Type> getType() {
    public List<com.seagate.kinetic.proto.Kinetic.Command.GetLog.Type> getType() {
        return type;
    }

    public void setType(
            List<com.seagate.kinetic.proto.Kinetic.Message.GetLog.Type> type) {
            List<com.seagate.kinetic.proto.Kinetic.Command.GetLog.Type> type) {
        this.type = type;
    }
}
+1 −1
Original line number Diff line number Diff line
@@ -131,7 +131,7 @@ public class AsyncCallbackResult<T> implements CallbackResult<T> {
		}

		// return the key field of the request message.
		return this.request.getMessage().getCommand().getBody().getKeyValue()
		return this.request.getCommand().getBody().getKeyValue()
				.getKey()
				.toByteArray();
	}
Loading