package com.cardshifter.api.outgoing;

import java.util.Arrays;

import com.cardshifter.api.ArrayUtil;
import com.cardshifter.api.messages.Message;

public class ZoneMessage extends Message {
//	SERVER: command: zone, name: 'Deck', owner: 0, id: 7, (playerIndex), size: 42, hidden: true

	private int id;
	private String name;
	private int owner;
	private int size;
	private boolean known;
	private int[] entities;

	public ZoneMessage() {
		this(0, "", 0, 0, false, new int[]{});
	}

	public ZoneMessage(int id, String name, int owner, int size, boolean known, int[] entities) {
		super("zone");
		this.id = id;
		this.name = name;
		this.owner = owner;
		this.size = size;
		this.known = known;
		this.entities = ArrayUtil.copyOf(entities);
	}
	
	public int getId() {
		return id;
	}
	
	public String getName() {
		return name;
	}
	
	public int getOwner() {
		return owner;
	}
	
	public int getSize() {
		return size;
	}

	public boolean isKnown() {
		return known;
	}
	
	public int[] getEntities() {
		return ArrayUtil.copyOf(entities);
	}

	@Override
	public String toString() {
		return "ZoneMessage [id=" + id + ", name=" + name + ", owner=" + owner + ", size=" + size + ", known=" + known + "]";
	}
	
}

package com.cardshifter.api.outgoing;

import java.util.Arrays;

import com.cardshifter.api.ArrayUtil;
import com.cardshifter.api.messages.Message;

/** Message containing properties of a zone. */
public class ZoneMessage extends Message {
//	SERVER: command: zone, name: 'Deck', owner: 0, id: 7, (playerIndex), size: 42, hidden: true

	private int id;
	private String name;
	private int owner;
	private int size;
	private boolean known;
	private int[] entities;

	/** Constructor. (no params) */
	public ZoneMessage() {
		this(0, "", 0, 0, false, new int[]{});
	}
	/**
	 * Constructor.
	 * @param id  The Id of this zone
	 * @param name  The name of this zone
	 * @param owner  The owner of this zone
	 * @param size  The size of this zone
	 * @param known  Whether this zone is known or hidden
	 * @param entities  Set of entities in this zone
	 */
	public ZoneMessage(int id, String name, int owner, int size, boolean known, int[] entities) {
		super("zone");
		this.id = id;
		this.name = name;
		this.owner = owner;
		this.size = size;
		this.known = known;
		this.entities = ArrayUtil.copyOf(entities);
	}
	/** @return  The Id of this zone */
	public int getId() {
		return id;
	}
	/** @return  The name of this zone */
	public String getName() {
		return name;
	}
	/** @return  The owner of this zone */
	public int getOwner() {
		return owner;
	}
	/** @return  The size of this zone */
	public int getSize() {
		return size;
	}
	/** @return  Whether this zone is known or hidden */
	public boolean isKnown() {
		return known;
	}
	/** @return  Set of entities in this zone */
	public int[] getEntities() {
		return ArrayUtil.copyOf(entities);
	}
	/** @return  This message as converted to String  */
	@Override
	public String toString() {
		return "ZoneMessage ["
			+ "id=" + id 
			+ ", name=" + name 
			+ ", owner=" + owner 
			+ ", size=" + size 
			+ ", known=" + known 
		+ "]";
	}
	
}

Update ZoneMessage.java