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

import com.scene7.is.ipp.messages.Ipp;
import com.scene7.is.ipp.messages.IppAnnotGroup;
import com.scene7.is.ipp.messages.IppAnnotNote;
import com.scene7.is.ipp.messages.IppAnnotStroke;
import com.scene7.is.ipp.messages.IppInt;
import com.scene7.is.ipp.messages.Offset;
import com.scene7.is.ipp.messages.OutMessage;
import java.io.IOException;
import java.io.Writer;

public class ReqAnnotRemove
extends OutMessage {
    static int MessageNumber = 2163219;
    private int viewId_;
    private IppAnnotGroup[] groups_;
    private IppAnnotStroke[] strokes_;
    private IppAnnotNote[] notes_;

    public ReqAnnotRemove(int tag, int viewId, IppAnnotGroup[] groups, IppAnnotStroke[] strokes, IppAnnotNote[] notes, int headClientId) {
        int i;
        this.tag_ = tag;
        this.headerClientId_ = headClientId;
        this.viewId_ = viewId;
        this.groups_ = groups;
        this.strokes_ = strokes;
        this.notes_ = notes;
        int fixedLength = 40;
        Offset varPos = new Offset(fixedLength);
        if (groups != null) {
            varPos.val = varPos.val + 3 & -4;
            varPos.val += groups.length * 12;
            for (i = 0; i < groups.length; ++i) {
                groups[i].adjustVarPos(varPos);
            }
        }
        if (strokes != null) {
            varPos.val = varPos.val + 7 & -8;
            varPos.val += strokes.length * 48;
            for (i = 0; i < strokes.length; ++i) {
                strokes[i].adjustVarPos(varPos);
            }
        }
        if (notes != null) {
            varPos.val = varPos.val + 7 & -8;
            varPos.val += notes.length * 32;
            for (i = 0; i < notes.length; ++i) {
                notes[i].adjustVarPos(varPos);
            }
        }
        this.messageLength_ = varPos.val;
        varPos.val = fixedLength;
        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.viewId_);
        IppAnnotGroup.StuffArray(this.bodyBuffer_, pos, varPos, this.groups_);
        IppAnnotStroke.StuffArray(this.bodyBuffer_, pos, varPos, this.strokes_);
        IppAnnotNote.StuffArray(this.bodyBuffer_, pos, varPos, this.notes_);
        Ipp.Assert(pos.val == fixedLength, "IppWatermarkType length");
    }

    public ReqAnnotRemove() {
    }

    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.viewId_ = IppInt.Unstuff(this.bodyBuffer_, pos);
        this.groups_ = IppAnnotGroup.UnstuffArray(this.bodyBuffer_, pos);
        this.strokes_ = IppAnnotStroke.UnstuffArray(this.bodyBuffer_, pos);
        this.notes_ = IppAnnotNote.UnstuffArray(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(": ReqAnnotRemove ");
        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, "viewId: ", this.viewId_);
        IppAnnotGroup.PrintArray(tf, "groups: ", this.groups_);
        IppAnnotStroke.PrintArray(tf, "strokes: ", this.strokes_);
        IppAnnotNote.PrintArray(tf, "notes: ", this.notes_);
    }

    public String toString() {
        StringBuffer buffer = new StringBuffer();
        buffer.append("ReqAnnotRemove                ");
        buffer.append("[viewId: " + String.valueOf(this.viewId_) + "],");
        buffer.append("[groups: " + String.valueOf(this.groups_) + "],");
        buffer.append("[strokes: " + String.valueOf(this.strokes_) + "],");
        buffer.append("[notes: " + String.valueOf(this.notes_) + "],");
        return buffer.toString();
    }

    public int viewId() {
        return this.viewId_;
    }

    public IppAnnotGroup[] groups() {
        return this.groups_;
    }

    public IppAnnotStroke[] strokes() {
        return this.strokes_;
    }

    public IppAnnotNote[] notes() {
        return this.notes_;
    }
}