ResClientConnect.java 4.37 KB
/*
 * Decompiled with CFR 0_118.
 */
package com.scene7.is.ipp.messages;

import com.scene7.is.ipp.messages.InMessage;
import com.scene7.is.ipp.messages.Ipp;
import com.scene7.is.ipp.messages.IppBool;
import com.scene7.is.ipp.messages.IppByte;
import com.scene7.is.ipp.messages.IppInt;
import com.scene7.is.ipp.messages.Offset;
import java.io.IOException;
import java.io.Writer;

public class ResClientConnect
extends InMessage {
    static int MessageNumber = 66304;
    private int clientId_;
    private int versionMinor_;
    private int versionMajor_;
    private byte[] serverGUID_;
    private boolean clientSwab_;

    public ResClientConnect(int tag, int clientId, int versionMinor, int versionMajor, byte[] serverGUID, boolean clientSwab, int headClientId) {
        int fixedLength;
        this.tag_ = tag;
        this.headerClientId_ = headClientId;
        this.clientId_ = clientId;
        this.versionMinor_ = versionMinor;
        this.versionMajor_ = versionMajor;
        this.serverGUID_ = serverGUID;
        this.clientSwab_ = clientSwab;
        Ipp.Assert(serverGUID.length == 16, "IppWatermarkType field serverGUID length");
        this.messageLength_ = fixedLength = 32;
        Offset pos = new Offset(0);
        this.headBuffer_ = new byte[32];
        this.bodyBuffer_ = new byte[this.messageLength_];
        Ipp.StuffHeader(this.headBuffer_, this.headerClientId_, tag, MessageNumber, this.messageLength_);
        IppInt.Stuff(this.bodyBuffer_, pos, null, this.clientId_);
        IppInt.Stuff(this.bodyBuffer_, pos, null, this.versionMinor_);
        IppInt.Stuff(this.bodyBuffer_, pos, null, this.versionMajor_);
        IppByte.StuffFixedArray(this.bodyBuffer_, pos, null, 16, this.serverGUID_);
        IppBool.Stuff(this.bodyBuffer_, pos, null, this.clientSwab_);
        Ipp.Assert(pos.val == fixedLength, "IppWatermarkType length");
    }

    public ResClientConnect() {
    }

    public void process(int headClientId, int tg, byte[] bf) {
        this.headerClientId_ = headClientId;
        this.tag_ = tg;
        this.messageLength_ = bf.length;
        this.headBuffer_ = new byte[32];
        Ipp.StuffHeader(this.headBuffer_, this.headerClientId_, this.tag_, MessageNumber, this.messageLength_);
        this.bodyBuffer_ = bf;
        Offset pos = new Offset(0);
        this.clientId_ = IppInt.Unstuff(this.bodyBuffer_, pos);
        this.versionMinor_ = IppInt.Unstuff(this.bodyBuffer_, pos);
        this.versionMajor_ = IppInt.Unstuff(this.bodyBuffer_, pos);
        this.serverGUID_ = IppByte.UnstuffFixedArray(this.bodyBuffer_, pos, 16);
        this.clientSwab_ = IppBool.Unstuff(this.bodyBuffer_, pos);
    }

    public int classification() {
        return 1;
    }

    public int id() {
        return MessageNumber;
    }

    public void print(Writer tf, String heading) throws IOException {
        tf.write("\n");
        tf.write(heading);
        tf.write(": ResClientConnect ");
        Ipp.PrintHex(tf, MessageNumber);
        tf.write("\n");
        tf.write("headClientId: " + this.headerClientId() + "\n");
        Ipp.PrintTag(tf, "tag: ", this.tag());
        tf.write("length: " + this.length());
        tf.write("\n");
        IppInt.Print(tf, "clientId: ", this.clientId_);
        IppInt.Print(tf, "versionMinor: ", this.versionMinor_);
        IppInt.Print(tf, "versionMajor: ", this.versionMajor_);
        IppByte.PrintArray(tf, "serverGUID: ", this.serverGUID_);
        IppBool.Print(tf, "clientSwab: ", this.clientSwab_);
    }

    public String toString() {
        StringBuffer buffer = new StringBuffer();
        buffer.append("ResClientConnect              ");
        buffer.append("[clientId: " + String.valueOf(this.clientId_) + "],");
        buffer.append("[versionMinor: " + String.valueOf(this.versionMinor_) + "],");
        buffer.append("[versionMajor: " + String.valueOf(this.versionMajor_) + "],");
        buffer.append("[serverGUID: " + String.valueOf(this.serverGUID_) + "],");
        buffer.append("[clientSwab: " + String.valueOf(this.clientSwab_) + "],");
        return buffer.toString();
    }

    public int clientId() {
        return this.clientId_;
    }

    public int versionMinor() {
        return this.versionMinor_;
    }

    public int versionMajor() {
        return this.versionMajor_;
    }

    public byte[] serverGUID() {
        return this.serverGUID_;
    }

    public boolean clientSwab() {
        return this.clientSwab_;
    }
}