From a86d51668249038fc09d436dbb3290ce882e7861 Mon Sep 17 00:00:00 2001 From: Johann Latocha Date: Mon, 30 Jul 2012 19:06:23 +0200 Subject: Add IPCHeader --- src/main/java/org/openslx/dnbd3/DNBD3Header.java | 72 ++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 src/main/java/org/openslx/dnbd3/DNBD3Header.java (limited to 'src/main/java/org/openslx/dnbd3/DNBD3Header.java') diff --git a/src/main/java/org/openslx/dnbd3/DNBD3Header.java b/src/main/java/org/openslx/dnbd3/DNBD3Header.java new file mode 100644 index 0000000..75c1358 --- /dev/null +++ b/src/main/java/org/openslx/dnbd3/DNBD3Header.java @@ -0,0 +1,72 @@ +package org.openslx.dnbd3; + +import java.nio.ByteBuffer; + +public class DNBD3Header { + + public static final int ERROR_IMAGE_NOT_FOUND = 1; + public static final int ERROR_IMAGE_ALREADY_EXISTS = 2; + public static final int ERROR_CONFIG_FILE_PERMISSIONS = 3; + public static final int ERROR_UNKNOWN = 10; + + private int cmd; + private int size; + private int error; + + public DNBD3Header(int cmd, int size, int error) { + this.cmd = cmd; + this.size = size; + this.error = error; + } + + public DNBD3Header(byte[] bytes) { + ByteBuffer bb = ByteBuffer.wrap(bytes); + this.cmd = bb.getInt(); + this.size = bb.getInt(); + this.error = bb.getInt(); + } + + public DNBD3Header() { + + } + + public byte[] toByteArray() { + ByteBuffer bb = ByteBuffer.allocate(12); + bb.putInt(cmd); + bb.putInt(size); + bb.putInt(error); + return bb.array(); + } + + public void fromByteArray(byte[] bytes) { + ByteBuffer bb = ByteBuffer.wrap(bytes); + this.cmd = bb.getInt(); + this.size = bb.getInt(); + this.error = bb.getInt(); + } + + public int getCmd() { + return cmd; + } + + public void setCmd(int cmd) { + this.cmd = cmd; + } + + public int getSize() { + return size; + } + + public void setSize(int size) { + this.size = size; + } + + public int getError() { + return error; + } + + public void setError(int error) { + this.error = error; + } + +} -- cgit v1.2.3-55-g7522