001 package net.minecraft.network.packet;
002
003 import java.io.DataInputStream;
004 import java.io.DataOutputStream;
005 import java.io.IOException;
006
007 public class Packet106Transaction extends Packet
008 {
009 /** The id of the window that the action occurred in. */
010 public int windowId;
011 public short shortWindowId;
012 public boolean accepted;
013
014 public Packet106Transaction() {}
015
016 public Packet106Transaction(int par1, short par2, boolean par3)
017 {
018 this.windowId = par1;
019 this.shortWindowId = par2;
020 this.accepted = par3;
021 }
022
023 /**
024 * Passes this Packet on to the NetHandler for processing.
025 */
026 public void processPacket(NetHandler par1NetHandler)
027 {
028 par1NetHandler.handleTransaction(this);
029 }
030
031 /**
032 * Abstract. Reads the raw packet data from the data stream.
033 */
034 public void readPacketData(DataInputStream par1DataInputStream) throws IOException
035 {
036 this.windowId = par1DataInputStream.readByte();
037 this.shortWindowId = par1DataInputStream.readShort();
038 this.accepted = par1DataInputStream.readByte() != 0;
039 }
040
041 /**
042 * Abstract. Writes the raw packet data to the data stream.
043 */
044 public void writePacketData(DataOutputStream par1DataOutputStream) throws IOException
045 {
046 par1DataOutputStream.writeByte(this.windowId);
047 par1DataOutputStream.writeShort(this.shortWindowId);
048 par1DataOutputStream.writeByte(this.accepted ? 1 : 0);
049 }
050
051 /**
052 * Abstract. Return the size of the packet (not counting the header).
053 */
054 public int getPacketSize()
055 {
056 return 4;
057 }
058 }