Weekly code cleanup

This commit is contained in:
boy0001 2014-12-16 16:03:20 +11:00
parent ffc7a5c7b7
commit 59be72aefe
168 changed files with 5733 additions and 3829 deletions

View File

@ -10,7 +10,8 @@ public final class ByteArrayTag extends Tag {
/**
* Creates the tag with an empty name.
*
* @param value the value of the tag
* @param value
* the value of the tag
*/
public ByteArrayTag(final byte[] value) {
super();
@ -20,8 +21,10 @@ public final class ByteArrayTag extends Tag {
/**
* Creates the tag.
*
* @param name the name of the tag
* @param value the value of the tag
* @param name
* the name of the tag
* @param value
* the value of the tag
*/
public ByteArrayTag(final String name, final byte[] value) {
super(name);

View File

@ -10,7 +10,8 @@ public final class ByteTag extends Tag {
/**
* Creates the tag with an empty name.
*
* @param value the value of the tag
* @param value
* the value of the tag
*/
public ByteTag(final byte value) {
super();
@ -20,8 +21,10 @@ public final class ByteTag extends Tag {
/**
* Creates the tag.
*
* @param name the name of the tag
* @param value the value of the tag
* @param name
* the name of the tag
* @param value
* the value of the tag
*/
public ByteTag(final String name, final byte value) {
super(name);

View File

@ -15,7 +15,8 @@ public final class CompoundTag extends Tag {
/**
* Creates the tag with an empty name.
*
* @param value the value of the tag
* @param value
* the value of the tag
*/
public CompoundTag(final Map<String, Tag> value) {
super();
@ -25,8 +26,10 @@ public final class CompoundTag extends Tag {
/**
* Creates the tag.
*
* @param name the name of the tag
* @param value the value of the tag
* @param name
* the name of the tag
* @param value
* the value of the tag
*/
public CompoundTag(final String name, final Map<String, Tag> value) {
super(name);
@ -36,7 +39,8 @@ public final class CompoundTag extends Tag {
/**
* Returns whether this compound tag contains the given key.
*
* @param key the given key
* @param key
* the given key
* @return true if the tag contains the given key
*/
public boolean containsKey(final String key) {
@ -51,7 +55,8 @@ public final class CompoundTag extends Tag {
/**
* Return a new compound tag with the given values.
*
* @param value the value
* @param value
* the value
* @return the new compound tag
*/
public CompoundTag setValue(final Map<String, Tag> value) {
@ -75,14 +80,16 @@ public final class CompoundTag extends Tag {
* empty byte array will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return a byte array
*/
public byte[] getByteArray(final String key) {
final Tag tag = this.value.get(key);
if (tag instanceof ByteArrayTag) {
return ((ByteArrayTag) tag).getValue();
} else {
}
else {
return new byte[0];
}
}
@ -95,14 +102,16 @@ public final class CompoundTag extends Tag {
* will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return a byte
*/
public byte getByte(final String key) {
final Tag tag = this.value.get(key);
if (tag instanceof ByteTag) {
return ((ByteTag) tag).getValue();
} else {
}
else {
return (byte) 0;
}
}
@ -115,14 +124,16 @@ public final class CompoundTag extends Tag {
* {@code 0} will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return a double
*/
public double getDouble(final String key) {
final Tag tag = this.value.get(key);
if (tag instanceof DoubleTag) {
return ((DoubleTag) tag).getValue();
} else {
}
else {
return 0;
}
}
@ -136,7 +147,8 @@ public final class CompoundTag extends Tag {
* will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return a double
*/
public double asDouble(final String key) {
@ -144,22 +156,28 @@ public final class CompoundTag extends Tag {
if (tag instanceof ByteTag) {
return ((ByteTag) tag).getValue();
} else if (tag instanceof ShortTag) {
}
else if (tag instanceof ShortTag) {
return ((ShortTag) tag).getValue();
} else if (tag instanceof IntTag) {
}
else if (tag instanceof IntTag) {
return ((IntTag) tag).getValue();
} else if (tag instanceof LongTag) {
}
else if (tag instanceof LongTag) {
return ((LongTag) tag).getValue();
} else if (tag instanceof FloatTag) {
}
else if (tag instanceof FloatTag) {
return ((FloatTag) tag).getValue();
} else if (tag instanceof DoubleTag) {
}
else if (tag instanceof DoubleTag) {
return ((DoubleTag) tag).getValue();
} else {
}
else {
return 0;
}
}
@ -172,14 +190,16 @@ public final class CompoundTag extends Tag {
* will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return a float
*/
public float getFloat(final String key) {
final Tag tag = this.value.get(key);
if (tag instanceof FloatTag) {
return ((FloatTag) tag).getValue();
} else {
}
else {
return 0;
}
}
@ -192,14 +212,16 @@ public final class CompoundTag extends Tag {
* empty array will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return an int array
*/
public int[] getIntArray(final String key) {
final Tag tag = this.value.get(key);
if (tag instanceof IntArrayTag) {
return ((IntArrayTag) tag).getValue();
} else {
}
else {
return new int[0];
}
}
@ -212,14 +234,16 @@ public final class CompoundTag extends Tag {
* will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return an int
*/
public int getInt(final String key) {
final Tag tag = this.value.get(key);
if (tag instanceof IntTag) {
return ((IntTag) tag).getValue();
} else {
}
else {
return 0;
}
}
@ -233,7 +257,8 @@ public final class CompoundTag extends Tag {
* will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return an int
*/
public int asInt(final String key) {
@ -241,22 +266,28 @@ public final class CompoundTag extends Tag {
if (tag instanceof ByteTag) {
return ((ByteTag) tag).getValue();
} else if (tag instanceof ShortTag) {
}
else if (tag instanceof ShortTag) {
return ((ShortTag) tag).getValue();
} else if (tag instanceof IntTag) {
}
else if (tag instanceof IntTag) {
return ((IntTag) tag).getValue();
} else if (tag instanceof LongTag) {
}
else if (tag instanceof LongTag) {
return ((LongTag) tag).getValue().intValue();
} else if (tag instanceof FloatTag) {
}
else if (tag instanceof FloatTag) {
return ((FloatTag) tag).getValue().intValue();
} else if (tag instanceof DoubleTag) {
}
else if (tag instanceof DoubleTag) {
return ((DoubleTag) tag).getValue().intValue();
} else {
}
else {
return 0;
}
}
@ -269,14 +300,16 @@ public final class CompoundTag extends Tag {
* list will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return a list of tags
*/
public List<Tag> getList(final String key) {
final Tag tag = this.value.get(key);
if (tag instanceof ListTag) {
return ((ListTag) tag).getValue();
} else {
}
else {
return Collections.emptyList();
}
}
@ -289,15 +322,17 @@ public final class CompoundTag extends Tag {
* tag list will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return a tag list instance
*/
public ListTag getListTag(final String key) {
final Tag tag = this.value.get(key);
if (tag instanceof ListTag) {
return (ListTag) tag;
} else {
return new ListTag(key, StringTag.class, Collections.<Tag>emptyList());
}
else {
return new ListTag(key, StringTag.class, Collections.<Tag> emptyList());
}
}
@ -310,9 +345,12 @@ public final class CompoundTag extends Tag {
* of a different type, then an empty list will also be returned.
* </p>
*
* @param key the key
* @param listType the class of the contained type
* @param <T> the type of list
* @param key
* the key
* @param listType
* the class of the contained type
* @param <T>
* the type of list
* @return a list of tags
*/
@SuppressWarnings("unchecked")
@ -322,10 +360,12 @@ public final class CompoundTag extends Tag {
final ListTag listTag = (ListTag) tag;
if (listTag.getType().equals(listType)) {
return (List<T>) listTag.getValue();
} else {
}
else {
return Collections.emptyList();
}
} else {
}
else {
return Collections.emptyList();
}
}
@ -338,14 +378,16 @@ public final class CompoundTag extends Tag {
* will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return a long
*/
public long getLong(final String key) {
final Tag tag = this.value.get(key);
if (tag instanceof LongTag) {
return ((LongTag) tag).getValue();
} else {
}
else {
return 0L;
}
}
@ -359,7 +401,8 @@ public final class CompoundTag extends Tag {
* will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return a long
*/
public long asLong(final String key) {
@ -367,22 +410,28 @@ public final class CompoundTag extends Tag {
if (tag instanceof ByteTag) {
return ((ByteTag) tag).getValue();
} else if (tag instanceof ShortTag) {
}
else if (tag instanceof ShortTag) {
return ((ShortTag) tag).getValue();
} else if (tag instanceof IntTag) {
}
else if (tag instanceof IntTag) {
return ((IntTag) tag).getValue();
} else if (tag instanceof LongTag) {
}
else if (tag instanceof LongTag) {
return ((LongTag) tag).getValue();
} else if (tag instanceof FloatTag) {
}
else if (tag instanceof FloatTag) {
return ((FloatTag) tag).getValue().longValue();
} else if (tag instanceof DoubleTag) {
}
else if (tag instanceof DoubleTag) {
return ((DoubleTag) tag).getValue().longValue();
} else {
}
else {
return 0L;
}
}
@ -395,14 +444,16 @@ public final class CompoundTag extends Tag {
* will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return a short
*/
public short getShort(final String key) {
final Tag tag = this.value.get(key);
if (tag instanceof ShortTag) {
return ((ShortTag) tag).getValue();
} else {
}
else {
return 0;
}
}
@ -415,14 +466,16 @@ public final class CompoundTag extends Tag {
* {@code ""} will be returned.
* </p>
*
* @param key the key
* @param key
* the key
* @return a string
*/
public String getString(final String key) {
final Tag tag = this.value.get(key);
if (tag instanceof StringTag) {
return ((StringTag) tag).getValue();
} else {
}
else {
return "";
}
}

View File

@ -1,10 +1,10 @@
package com.intellectualcrafters.jnbt;
import static com.google.common.base.Preconditions.checkNotNull;
import java.util.HashMap;
import java.util.Map;
import static com.google.common.base.Preconditions.checkNotNull;
/**
* Helps create compound tags.
*/
@ -22,7 +22,8 @@ public class CompoundTagBuilder {
/**
* Create a new instance and use the given map (which will be modified).
*
* @param value the value
* @param value
* the value
*/
CompoundTagBuilder(final Map<String, Tag> value) {
checkNotNull(value);
@ -41,8 +42,10 @@ public class CompoundTagBuilder {
/**
* Put the given key and tag into the compound tag.
*
* @param key they key
* @param value the value
* @param key
* they key
* @param value
* the value
* @return this object
*/
public CompoundTagBuilder put(final String key, final Tag value) {
@ -56,8 +59,10 @@ public class CompoundTagBuilder {
* Put the given key and value into the compound tag as a
* {@code ByteArrayTag}.
*
* @param key they key
* @param value the value
* @param key
* they key
* @param value
* the value
* @return this object
*/
public CompoundTagBuilder putByteArray(final String key, final byte[] value) {
@ -67,8 +72,10 @@ public class CompoundTagBuilder {
/**
* Put the given key and value into the compound tag as a {@code ByteTag}.
*
* @param key they key
* @param value the value
* @param key
* they key
* @param value
* the value
* @return this object
*/
public CompoundTagBuilder putByte(final String key, final byte value) {
@ -78,8 +85,10 @@ public class CompoundTagBuilder {
/**
* Put the given key and value into the compound tag as a {@code DoubleTag}.
*
* @param key they key
* @param value the value
* @param key
* they key
* @param value
* the value
* @return this object
*/
public CompoundTagBuilder putDouble(final String key, final double value) {
@ -89,8 +98,10 @@ public class CompoundTagBuilder {
/**
* Put the given key and value into the compound tag as a {@code FloatTag}.
*
* @param key they key
* @param value the value
* @param key
* they key
* @param value
* the value
* @return this object
*/
public CompoundTagBuilder putFloat(final String key, final float value) {
@ -101,8 +112,10 @@ public class CompoundTagBuilder {
* Put the given key and value into the compound tag as a
* {@code IntArrayTag}.
*
* @param key they key
* @param value the value
* @param key
* they key
* @param value
* the value
* @return this object
*/
public CompoundTagBuilder putIntArray(final String key, final int[] value) {
@ -112,8 +125,10 @@ public class CompoundTagBuilder {
/**
* Put the given key and value into the compound tag as an {@code IntTag}.
*
* @param key they key
* @param value the value
* @param key
* they key
* @param value
* the value
* @return this object
*/
public CompoundTagBuilder putInt(final String key, final int value) {
@ -123,8 +138,10 @@ public class CompoundTagBuilder {
/**
* Put the given key and value into the compound tag as a {@code LongTag}.
*
* @param key they key
* @param value the value
* @param key
* they key
* @param value
* the value
* @return this object
*/
public CompoundTagBuilder putLong(final String key, final long value) {
@ -134,8 +151,10 @@ public class CompoundTagBuilder {
/**
* Put the given key and value into the compound tag as a {@code ShortTag}.
*
* @param key they key
* @param value the value
* @param key
* they key
* @param value
* the value
* @return this object
*/
public CompoundTagBuilder putShort(final String key, final short value) {
@ -145,8 +164,10 @@ public class CompoundTagBuilder {
/**
* Put the given key and value into the compound tag as a {@code StringTag}.
*
* @param key they key
* @param value the value
* @param key
* they key
* @param value
* the value
* @return this object
*/
public CompoundTagBuilder putString(final String key, final String value) {
@ -156,7 +177,8 @@ public class CompoundTagBuilder {
/**
* Put all the entries from the given map into this map.
*
* @param value the map of tags
* @param value
* the map of tags
* @return this object
*/
public CompoundTagBuilder putAll(final Map<String, ? extends Tag> value) {
@ -179,7 +201,8 @@ public class CompoundTagBuilder {
/**
* Build a new compound tag with this builder's entries.
*
* @param name the name of the tag
* @param name
* the name of the tag
* @return the created compound tag
*/
public CompoundTag build(final String name) {

View File

@ -10,7 +10,8 @@ public final class DoubleTag extends Tag {
/**
* Creates the tag with an empty name.
*
* @param value the value of the tag
* @param value
* the value of the tag
*/
public DoubleTag(final double value) {
super();
@ -20,8 +21,10 @@ public final class DoubleTag extends Tag {
/**
* Creates the tag.
*
* @param name the name of the tag
* @param value the value of the tag
* @param name
* the name of the tag
* @param value
* the value of the tag
*/
public DoubleTag(final String name, final double value) {
super(name);

View File

@ -10,7 +10,8 @@ public final class FloatTag extends Tag {
/**
* Creates the tag with an empty name.
*
* @param value the value of the tag
* @param value
* the value of the tag
*/
public FloatTag(final float value) {
super();
@ -20,8 +21,10 @@ public final class FloatTag extends Tag {
/**
* Creates the tag.
*
* @param name the name of the tag
* @param value the value of the tag
* @param name
* the name of the tag
* @param value
* the value of the tag
*/
public FloatTag(final String name, final float value) {
super(name);

View File

@ -12,7 +12,8 @@ public final class IntArrayTag extends Tag {
/**
* Creates the tag with an empty name.
*
* @param value the value of the tag
* @param value
* the value of the tag
*/
public IntArrayTag(final int[] value) {
super();
@ -23,8 +24,10 @@ public final class IntArrayTag extends Tag {
/**
* Creates the tag.
*
* @param name the name of the tag
* @param value the value of the tag
* @param name
* the name of the tag
* @param value
* the value of the tag
*/
public IntArrayTag(final String name, final int[] value) {
super(name);

View File

@ -10,7 +10,8 @@ public final class IntTag extends Tag {
/**
* Creates the tag with an empty name.
*
* @param value the value of the tag
* @param value
* the value of the tag
*/
public IntTag(final int value) {
super();
@ -20,8 +21,10 @@ public final class IntTag extends Tag {
/**
* Creates the tag.
*
* @param name the name of the tag
* @param value the value of the tag
* @param name
* the name of the tag
* @param value
* the value of the tag
*/
public IntTag(final String name, final int value) {
super(name);

View File

@ -1,11 +1,12 @@
package com.intellectualcrafters.jnbt;
import javax.annotation.Nullable;
import static com.google.common.base.Preconditions.checkNotNull;
import java.util.Collections;
import java.util.List;
import java.util.NoSuchElementException;
import static com.google.common.base.Preconditions.checkNotNull;
import javax.annotation.Nullable;
/**
* The {@code TAG_List} tag.
@ -18,8 +19,10 @@ public final class ListTag extends Tag {
/**
* Creates the tag with an empty name.
*
* @param type the type of tag
* @param value the value of the tag
* @param type
* the type of tag
* @param value
* the value of the tag
*/
public ListTag(final Class<? extends Tag> type, final List<? extends Tag> value) {
super();
@ -31,9 +34,12 @@ public final class ListTag extends Tag {
/**
* Creates the tag.
*
* @param name the name of the tag
* @param type the type of tag
* @param value the value of the tag
* @param name
* the name of the tag
* @param type
* the type of tag
* @param value
* the value of the tag
*/
public ListTag(final String name, final Class<? extends Tag> type, final List<? extends Tag> value) {
super(name);
@ -59,7 +65,8 @@ public final class ListTag extends Tag {
/**
* Create a new list tag with this tag's name and type.
*
* @param list the new list
* @param list
* the new list
* @return a new list tag
*/
public ListTag setValue(final List<Tag> list) {
@ -69,14 +76,16 @@ public final class ListTag extends Tag {
/**
* Get the tag if it exists at the given index.
*
* @param index the index
* @param index
* the index
* @return the tag or null
*/
@Nullable
public Tag getIfExists(final int index) {
try {
return this.value.get(index);
} catch (final NoSuchElementException e) {
}
catch (final NoSuchElementException e) {
return null;
}
}
@ -89,14 +98,16 @@ public final class ListTag extends Tag {
* empty byte array will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return a byte array
*/
public byte[] getByteArray(final int index) {
final Tag tag = getIfExists(index);
if (tag instanceof ByteArrayTag) {
return ((ByteArrayTag) tag).getValue();
} else {
}
else {
return new byte[0];
}
}
@ -109,14 +120,16 @@ public final class ListTag extends Tag {
* {@code 0} will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return a byte
*/
public byte getByte(final int index) {
final Tag tag = getIfExists(index);
if (tag instanceof ByteTag) {
return ((ByteTag) tag).getValue();
} else {
}
else {
return (byte) 0;
}
}
@ -129,14 +142,16 @@ public final class ListTag extends Tag {
* {@code 0} will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return a double
*/
public double getDouble(final int index) {
final Tag tag = getIfExists(index);
if (tag instanceof DoubleTag) {
return ((DoubleTag) tag).getValue();
} else {
}
else {
return 0;
}
}
@ -150,7 +165,8 @@ public final class ListTag extends Tag {
* will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return a double
*/
public double asDouble(final int index) {
@ -158,22 +174,28 @@ public final class ListTag extends Tag {
if (tag instanceof ByteTag) {
return ((ByteTag) tag).getValue();
} else if (tag instanceof ShortTag) {
}
else if (tag instanceof ShortTag) {
return ((ShortTag) tag).getValue();
} else if (tag instanceof IntTag) {
}
else if (tag instanceof IntTag) {
return ((IntTag) tag).getValue();
} else if (tag instanceof LongTag) {
}
else if (tag instanceof LongTag) {
return ((LongTag) tag).getValue();
} else if (tag instanceof FloatTag) {
}
else if (tag instanceof FloatTag) {
return ((FloatTag) tag).getValue();
} else if (tag instanceof DoubleTag) {
}
else if (tag instanceof DoubleTag) {
return ((DoubleTag) tag).getValue();
} else {
}
else {
return 0;
}
}
@ -186,14 +208,16 @@ public final class ListTag extends Tag {
* {@code 0} will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return a float
*/
public float getFloat(final int index) {
final Tag tag = getIfExists(index);
if (tag instanceof FloatTag) {
return ((FloatTag) tag).getValue();
} else {
}
else {
return 0;
}
}
@ -206,14 +230,16 @@ public final class ListTag extends Tag {
* empty array will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return an int array
*/
public int[] getIntArray(final int index) {
final Tag tag = getIfExists(index);
if (tag instanceof IntArrayTag) {
return ((IntArrayTag) tag).getValue();
} else {
}
else {
return new int[0];
}
}
@ -226,14 +252,16 @@ public final class ListTag extends Tag {
* {@code 0} will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return an int
*/
public int getInt(final int index) {
final Tag tag = getIfExists(index);
if (tag instanceof IntTag) {
return ((IntTag) tag).getValue();
} else {
}
else {
return 0;
}
}
@ -247,7 +275,8 @@ public final class ListTag extends Tag {
* will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return an int
*/
public int asInt(final int index) {
@ -255,22 +284,28 @@ public final class ListTag extends Tag {
if (tag instanceof ByteTag) {
return ((ByteTag) tag).getValue();
} else if (tag instanceof ShortTag) {
}
else if (tag instanceof ShortTag) {
return ((ShortTag) tag).getValue();
} else if (tag instanceof IntTag) {
}
else if (tag instanceof IntTag) {
return ((IntTag) tag).getValue();
} else if (tag instanceof LongTag) {
}
else if (tag instanceof LongTag) {
return ((LongTag) tag).getValue().intValue();
} else if (tag instanceof FloatTag) {
}
else if (tag instanceof FloatTag) {
return ((FloatTag) tag).getValue().intValue();
} else if (tag instanceof DoubleTag) {
}
else if (tag instanceof DoubleTag) {
return ((DoubleTag) tag).getValue().intValue();
} else {
}
else {
return 0;
}
}
@ -283,14 +318,16 @@ public final class ListTag extends Tag {
* list will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return a list of tags
*/
public List<Tag> getList(final int index) {
final Tag tag = getIfExists(index);
if (tag instanceof ListTag) {
return ((ListTag) tag).getValue();
} else {
}
else {
return Collections.emptyList();
}
}
@ -303,15 +340,17 @@ public final class ListTag extends Tag {
* tag list will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return a tag list instance
*/
public ListTag getListTag(final int index) {
final Tag tag = getIfExists(index);
if (tag instanceof ListTag) {
return (ListTag) tag;
} else {
return new ListTag(StringTag.class, Collections.<Tag>emptyList());
}
else {
return new ListTag(StringTag.class, Collections.<Tag> emptyList());
}
}
@ -324,9 +363,12 @@ public final class ListTag extends Tag {
* of of a different type, then an empty list will also be returned.
* </p>
*
* @param index the index
* @param listType the class of the contained type
* @param <T> the NBT type
* @param index
* the index
* @param listType
* the class of the contained type
* @param <T>
* the NBT type
* @return a list of tags
*/
@SuppressWarnings("unchecked")
@ -336,10 +378,12 @@ public final class ListTag extends Tag {
final ListTag listTag = (ListTag) tag;
if (listTag.getType().equals(listType)) {
return (List<T>) listTag.getValue();
} else {
}
else {
return Collections.emptyList();
}
} else {
}
else {
return Collections.emptyList();
}
}
@ -352,14 +396,16 @@ public final class ListTag extends Tag {
* {@code 0} will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return a long
*/
public long getLong(final int index) {
final Tag tag = getIfExists(index);
if (tag instanceof LongTag) {
return ((LongTag) tag).getValue();
} else {
}
else {
return 0L;
}
}
@ -373,7 +419,8 @@ public final class ListTag extends Tag {
* will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return a long
*/
public long asLong(final int index) {
@ -381,22 +428,28 @@ public final class ListTag extends Tag {
if (tag instanceof ByteTag) {
return ((ByteTag) tag).getValue();
} else if (tag instanceof ShortTag) {
}
else if (tag instanceof ShortTag) {
return ((ShortTag) tag).getValue();
} else if (tag instanceof IntTag) {
}
else if (tag instanceof IntTag) {
return ((IntTag) tag).getValue();
} else if (tag instanceof LongTag) {
}
else if (tag instanceof LongTag) {
return ((LongTag) tag).getValue();
} else if (tag instanceof FloatTag) {
}
else if (tag instanceof FloatTag) {
return ((FloatTag) tag).getValue().longValue();
} else if (tag instanceof DoubleTag) {
}
else if (tag instanceof DoubleTag) {
return ((DoubleTag) tag).getValue().longValue();
} else {
}
else {
return 0;
}
}
@ -409,14 +462,16 @@ public final class ListTag extends Tag {
* {@code 0} will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return a short
*/
public short getShort(final int index) {
final Tag tag = getIfExists(index);
if (tag instanceof ShortTag) {
return ((ShortTag) tag).getValue();
} else {
}
else {
return 0;
}
}
@ -429,14 +484,16 @@ public final class ListTag extends Tag {
* {@code ""} will be returned.
* </p>
*
* @param index the index
* @param index
* the index
* @return a string
*/
public String getString(final int index) {
final Tag tag = getIfExists(index);
if (tag instanceof StringTag) {
return ((StringTag) tag).getValue();
} else {
}
else {
return "";
}
}

View File

@ -1,12 +1,12 @@
package com.intellectualcrafters.jnbt;
import static com.google.common.base.Preconditions.checkNotNull;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
import static com.google.common.base.Preconditions.checkNotNull;
/**
* Helps create list tags.
*/
@ -18,7 +18,8 @@ public class ListTagBuilder {
/**
* Create a new instance.
*
* @param type of tag contained in this list
* @param type
* of tag contained in this list
*/
ListTagBuilder(final Class<? extends Tag> type) {
checkNotNull(type);
@ -63,7 +64,8 @@ public class ListTagBuilder {
/**
* Add the given tag.
*
* @param value the tag
* @param value
* the tag
* @return this object
*/
public ListTagBuilder add(final Tag value) {
@ -78,7 +80,8 @@ public class ListTagBuilder {
/**
* Add all the tags in the given list.
*
* @param value a list of tags
* @param value
* a list of tags
* @return this object
*/
public ListTagBuilder addAll(final Collection<? extends Tag> value) {
@ -101,7 +104,8 @@ public class ListTagBuilder {
/**
* Build a new list tag with this builder's entries.
*
* @param name the name of the tag
* @param name
* the name of the tag
* @return the created list tag
*/
public ListTag build(final String name) {

View File

@ -10,7 +10,8 @@ public final class LongTag extends Tag {
/**
* Creates the tag with an empty name.
*
* @param value the value of the tag
* @param value
* the value of the tag
*/
public LongTag(final long value) {
super();
@ -20,8 +21,10 @@ public final class LongTag extends Tag {
/**
* Creates the tag.
*
* @param name the name of the tag
* @param value the value of the tag
* @param name
* the name of the tag
* @param value
* the value of the tag
*/
public LongTag(final String name, final long value) {
super(name);

View File

@ -42,9 +42,11 @@ public final class NBTConstants {
/**
* Convert a type ID to its corresponding {@link Tag} class.
*
* @param id type ID
* @param id
* type ID
* @return tag class
* @throws IllegalArgumentException thrown if the tag ID is not valid
* @throws IllegalArgumentException
* thrown if the tag ID is not valid
*/
public static Class<? extends Tag> getClassFromType(final int id) {
switch (id) {

View File

@ -28,8 +28,10 @@ public final class NBTInputStream implements Closeable {
* Creates a new {@code NBTInputStream}, which will source its data
* from the specified input stream.
*
* @param is the input stream
* @throws IOException if an I/O error occurs
* @param is
* the input stream
* @throws IOException
* if an I/O error occurs
*/
public NBTInputStream(final InputStream is) throws IOException {
this.is = new DataInputStream(is);
@ -39,7 +41,8 @@ public final class NBTInputStream implements Closeable {
* Reads an NBT tag from the stream.
*
* @return The tag that was read.
* @throws IOException if an I/O error occurs.
* @throws IOException
* if an I/O error occurs.
*/
public Tag readTag() throws IOException {
return readTag(0);
@ -48,9 +51,11 @@ public final class NBTInputStream implements Closeable {
/**
* Reads an NBT from the stream.
*
* @param depth the depth of this tag
* @param depth
* the depth of this tag
* @return The tag that was read.
* @throws IOException if an I/O error occurs.
* @throws IOException
* if an I/O error occurs.
*/
private Tag readTag(final int depth) throws IOException {
final int type = this.is.readByte() & 0xFF;
@ -61,7 +66,8 @@ public final class NBTInputStream implements Closeable {
final byte[] nameBytes = new byte[nameLength];
this.is.readFully(nameBytes);
name = new String(nameBytes, NBTConstants.CHARSET);
} else {
}
else {
name = "";
}
@ -71,18 +77,23 @@ public final class NBTInputStream implements Closeable {
/**
* Reads the payload of a tag, given the name and type.
*
* @param type the type
* @param name the name
* @param depth the depth
* @param type
* the type
* @param name
* the name
* @param depth
* the depth
* @return the tag
* @throws IOException if an I/O error occurs.
* @throws IOException
* if an I/O error occurs.
*/
private Tag readTagPayload(final int type, final String name, final int depth) throws IOException {
switch (type) {
case NBTConstants.TYPE_END:
if (depth == 0) {
throw new IOException("TAG_End found without a TAG_Compound/TAG_List tag preceding it.");
} else {
}
else {
return new EndTag();
}
case NBTConstants.TYPE_BYTE:
@ -127,7 +138,8 @@ public final class NBTInputStream implements Closeable {
final Tag tag = readTag(depth + 1);
if (tag instanceof EndTag) {
break;
} else {
}
else {
tagMap.put(tag.getName(), tag);
}
}

View File

@ -52,8 +52,10 @@ public final class NBTOutputStream implements Closeable {
* Creates a new <code>NBTOutputStream</code>, which will write data to the
* specified underlying output stream.
*
* @param os The output stream.
* @throws IOException if an I/O error occurs.
* @param os
* The output stream.
* @throws IOException
* if an I/O error occurs.
*/
public NBTOutputStream(final OutputStream os) throws IOException {
this.os = new DataOutputStream(os);
@ -62,8 +64,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a tag.
*
* @param tag The tag to write.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag to write.
* @throws IOException
* if an I/O error occurs.
*/
public void writeTag(final Tag tag) throws IOException {
final int type = NBTUtils.getTypeCode(tag.getClass());
@ -84,8 +88,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes tag payload.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeTagPayload(final Tag tag) throws IOException {
final int type = NBTUtils.getTypeCode(tag.getClass());
@ -134,8 +140,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a <code>TAG_Byte</code> tag.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeByteTagPayload(final ByteTag tag) throws IOException {
this.os.writeByte(tag.getValue());
@ -144,8 +152,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a <code>TAG_Byte_Array</code> tag.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeByteArrayTagPayload(final ByteArrayTag tag) throws IOException {
final byte[] bytes = tag.getValue();
@ -156,8 +166,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a <code>TAG_Compound</code> tag.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeCompoundTagPayload(final CompoundTag tag) throws IOException {
for (final Tag childTag : tag.getValue().values()) {
@ -169,8 +181,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a <code>TAG_List</code> tag.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeListTagPayload(final ListTag tag) throws IOException {
final Class<? extends Tag> clazz = tag.getType();
@ -179,7 +193,7 @@ public final class NBTOutputStream implements Closeable {
this.os.writeByte(NBTUtils.getTypeCode(clazz));
this.os.writeInt(size);
for (Tag tag1 : tags) {
for (final Tag tag1 : tags) {
writeTagPayload(tag1);
}
}
@ -187,8 +201,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a <code>TAG_String</code> tag.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeStringTagPayload(final StringTag tag) throws IOException {
final byte[] bytes = tag.getValue().getBytes(NBTConstants.CHARSET);
@ -199,8 +215,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a <code>TAG_Double</code> tag.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeDoubleTagPayload(final DoubleTag tag) throws IOException {
this.os.writeDouble(tag.getValue());
@ -209,8 +227,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a <code>TAG_Float</code> tag.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeFloatTagPayload(final FloatTag tag) throws IOException {
this.os.writeFloat(tag.getValue());
@ -219,8 +239,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a <code>TAG_Long</code> tag.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeLongTagPayload(final LongTag tag) throws IOException {
this.os.writeLong(tag.getValue());
@ -229,8 +251,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a <code>TAG_Int</code> tag.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeIntTagPayload(final IntTag tag) throws IOException {
this.os.writeInt(tag.getValue());
@ -239,8 +263,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a <code>TAG_Short</code> tag.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeShortTagPayload(final ShortTag tag) throws IOException {
this.os.writeShort(tag.getValue());
@ -249,8 +275,10 @@ public final class NBTOutputStream implements Closeable {
/**
* Writes a <code>TAG_Empty</code> tag.
*
* @param tag The tag.
* @throws IOException if an I/O error occurs.
* @param tag
* The tag.
* @throws IOException
* if an I/O error occurs.
*/
private void writeEndTagPayload(final EndTag tag) {
/* empty */

View File

@ -16,35 +16,48 @@ public final class NBTUtils {
/**
* Gets the type name of a tag.
*
* @param clazz the tag class
* @param clazz
* the tag class
* @return The type name.
*/
public static String getTypeName(final Class<? extends Tag> clazz) {
if (clazz.equals(ByteArrayTag.class)) {
return "TAG_Byte_Array";
} else if (clazz.equals(ByteTag.class)) {
}
else if (clazz.equals(ByteTag.class)) {
return "TAG_Byte";
} else if (clazz.equals(CompoundTag.class)) {
}
else if (clazz.equals(CompoundTag.class)) {
return "TAG_Compound";
} else if (clazz.equals(DoubleTag.class)) {
}
else if (clazz.equals(DoubleTag.class)) {
return "TAG_Double";
} else if (clazz.equals(EndTag.class)) {
}
else if (clazz.equals(EndTag.class)) {
return "TAG_End";
} else if (clazz.equals(FloatTag.class)) {
}
else if (clazz.equals(FloatTag.class)) {
return "TAG_Float";
} else if (clazz.equals(IntTag.class)) {
}
else if (clazz.equals(IntTag.class)) {
return "TAG_Int";
} else if (clazz.equals(ListTag.class)) {
}
else if (clazz.equals(ListTag.class)) {
return "TAG_List";
} else if (clazz.equals(LongTag.class)) {
}
else if (clazz.equals(LongTag.class)) {
return "TAG_Long";
} else if (clazz.equals(ShortTag.class)) {
}
else if (clazz.equals(ShortTag.class)) {
return "TAG_Short";
} else if (clazz.equals(StringTag.class)) {
}
else if (clazz.equals(StringTag.class)) {
return "TAG_String";
} else if (clazz.equals(IntArrayTag.class)) {
}
else if (clazz.equals(IntArrayTag.class)) {
return "TAG_Int_Array";
} else {
}
else {
throw new IllegalArgumentException("Invalid tag classs (" + clazz.getName() + ").");
}
}
@ -52,36 +65,50 @@ public final class NBTUtils {
/**
* Gets the type code of a tag class.
*
* @param clazz the tag class
* @param clazz
* the tag class
* @return The type code.
* @throws IllegalArgumentException if the tag class is invalid.
* @throws IllegalArgumentException
* if the tag class is invalid.
*/
public static int getTypeCode(final Class<? extends Tag> clazz) {
if (clazz.equals(ByteArrayTag.class)) {
return NBTConstants.TYPE_BYTE_ARRAY;
} else if (clazz.equals(ByteTag.class)) {
}
else if (clazz.equals(ByteTag.class)) {
return NBTConstants.TYPE_BYTE;
} else if (clazz.equals(CompoundTag.class)) {
}
else if (clazz.equals(CompoundTag.class)) {
return NBTConstants.TYPE_COMPOUND;
} else if (clazz.equals(DoubleTag.class)) {
}
else if (clazz.equals(DoubleTag.class)) {
return NBTConstants.TYPE_DOUBLE;
} else if (clazz.equals(EndTag.class)) {
}
else if (clazz.equals(EndTag.class)) {
return NBTConstants.TYPE_END;
} else if (clazz.equals(FloatTag.class)) {
}
else if (clazz.equals(FloatTag.class)) {
return NBTConstants.TYPE_FLOAT;
} else if (clazz.equals(IntTag.class)) {
}
else if (clazz.equals(IntTag.class)) {
return NBTConstants.TYPE_INT;
} else if (clazz.equals(ListTag.class)) {
}
else if (clazz.equals(ListTag.class)) {
return NBTConstants.TYPE_LIST;
} else if (clazz.equals(LongTag.class)) {
}
else if (clazz.equals(LongTag.class)) {
return NBTConstants.TYPE_LONG;
} else if (clazz.equals(ShortTag.class)) {
}
else if (clazz.equals(ShortTag.class)) {
return NBTConstants.TYPE_SHORT;
} else if (clazz.equals(StringTag.class)) {
}
else if (clazz.equals(StringTag.class)) {
return NBTConstants.TYPE_STRING;
} else if (clazz.equals(IntArrayTag.class)) {
}
else if (clazz.equals(IntArrayTag.class)) {
return NBTConstants.TYPE_INT_ARRAY;
} else {
}
else {
throw new IllegalArgumentException("Invalid tag classs (" + clazz.getName() + ").");
}
}
@ -89,9 +116,11 @@ public final class NBTUtils {
/**
* Gets the class of a type of tag.
*
* @param type the type
* @param type
* the type
* @return The class.
* @throws IllegalArgumentException if the tag type is invalid.
* @throws IllegalArgumentException
* if the tag type is invalid.
*/
public static Class<? extends Tag> getTypeClass(final int type) {
switch (type) {
@ -127,9 +156,12 @@ public final class NBTUtils {
/**
* Get child tag of a NBT structure.
*
* @param items the map to read from
* @param key the key to look for
* @param expected the expected NBT class type
* @param items
* the map to read from
* @param key
* the key to look for
* @param expected
* the expected NBT class type
* @return child tag
*/
public static <T extends Tag> T getChildTag(final Map<String, Tag> items, final String key, final Class<T> expected) throws IllegalArgumentException {

View File

@ -31,7 +31,8 @@ public final class ShortTag extends Tag {
/**
* Creates the tag with an empty name.
*
* @param value the value of the tag
* @param value
* the value of the tag
*/
public ShortTag(final short value) {
super();
@ -41,8 +42,10 @@ public final class ShortTag extends Tag {
/**
* Creates the tag.
*
* @param name the name of the tag
* @param value the value of the tag
* @param name
* the name of the tag
* @param value
* the value of the tag
*/
public ShortTag(final String name, final short value) {
super(name);

View File

@ -12,7 +12,8 @@ public final class StringTag extends Tag {
/**
* Creates the tag with an empty name.
*
* @param value the value of the tag
* @param value
* the value of the tag
*/
public StringTag(final String value) {
super();
@ -23,8 +24,10 @@ public final class StringTag extends Tag {
/**
* Creates the tag.
*
* @param name the name of the tag
* @param value the value of the tag
* @param name
* the name of the tag
* @param value
* the value of the tag
*/
public StringTag(final String name, final String value) {
super(name);

View File

@ -38,7 +38,8 @@ public abstract class Tag {
/**
* Creates the tag with the specified name.
*
* @param name the name
* @param name
* the name
*/
Tag(String name) {
if (name == null) {

View File

@ -5,17 +5,17 @@ import org.bukkit.World;
public class WorldEditUtils {
public static void setNBT(final World world, final short id, final byte data, final int x, final int y, final int z, final com.intellectualcrafters.jnbt.CompoundTag tag) {
// final LocalWorld bukkitWorld = BukkitUtil.getLocalWorld(world);
// final LocalWorld bukkitWorld = BukkitUtil.getLocalWorld(world);
// I need to somehow convert our CompoundTag to WorldEdit's
// final BaseBlock block = new BaseBlock(5, 5, (CompoundTag) tag);
// final Vector vector = new Vector(x, y, z);
// try {
// bukkitWorld.setBlock(vector, block);
// }
// catch (final WorldEditException e) {
// e.printStackTrace();
// }
// final BaseBlock block = new BaseBlock(5, 5, (CompoundTag) tag);
// final Vector vector = new Vector(x, y, z);
// try {
// bukkitWorld.setBlock(vector, block);
// }
// catch (final WorldEditException e) {
// e.printStackTrace();
// }
}
}

View File

@ -26,9 +26,11 @@ public class CDL {
* Get the next value. The value can be wrapped in quotes. The value can
* be empty.
*
* @param x A JSONTokener of the source text.
* @param x
* A JSONTokener of the source text.
* @return The value string, or null if empty.
* @throws JSONException if the quoted string is badly formed.
* @throws JSONException
* if the quoted string is badly formed.
*/
private static String getValue(final JSONTokener x) throws JSONException {
char c;
@ -45,7 +47,7 @@ public class CDL {
case '\'':
q = c;
sb = new StringBuffer();
for (; ; ) {
for (;;) {
c = x.next();
if (c == q) {
break;
@ -68,20 +70,21 @@ public class CDL {
/**
* Produce a JSONArray of strings from a row of comma delimited values.
*
* @param x A JSONTokener of the source text.
* @param x
* A JSONTokener of the source text.
* @return A JSONArray of strings.
* @throws JSONException
*/
public static JSONArray rowToJSONArray(final JSONTokener x) throws JSONException {
final JSONArray ja = new JSONArray();
for (; ; ) {
for (;;) {
final String value = getValue(x);
char c = x.next();
if ((value == null) || ((ja.length() == 0) && (value.length() == 0) && (c != ','))) {
return null;
}
ja.put(value);
for (; ; ) {
for (;;) {
if (c == ',') {
break;
}
@ -100,11 +103,13 @@ public class CDL {
* Produce a JSONObject from a row of comma delimited text, using a
* parallel JSONArray of strings to provides the names of the elements.
*
* @param names A JSONArray of names. This is commonly obtained from the
* @param names
* A JSONArray of names. This is commonly obtained from the
* first row of a comma delimited text file using the
* rowToJSONArray
* method.
* @param x A JSONTokener of the source text.
* @param x
* A JSONTokener of the source text.
* @return A JSONObject combining the names and values.
* @throws JSONException
*/
@ -118,7 +123,8 @@ public class CDL {
* the comma character will be quoted. Troublesome characters may be
* removed.
*
* @param ja A JSONArray of strings.
* @param ja
* A JSONArray of strings.
* @return A string ending in NEWLINE.
*/
public static String rowToString(final JSONArray ja) {
@ -140,7 +146,8 @@ public class CDL {
}
}
sb.append('"');
} else {
}
else {
sb.append(string);
}
}
@ -153,7 +160,8 @@ public class CDL {
* Produce a JSONArray of JSONObjects from a comma delimited text string,
* using the first row as a source of names.
*
* @param string The comma delimited text.
* @param string
* The comma delimited text.
* @return A JSONArray of JSONObjects.
* @throws JSONException
*/
@ -165,7 +173,8 @@ public class CDL {
* Produce a JSONArray of JSONObjects from a comma delimited text string,
* using the first row as a source of names.
*
* @param x The JSONTokener containing the comma delimited text.
* @param x
* The JSONTokener containing the comma delimited text.
* @return A JSONArray of JSONObjects.
* @throws JSONException
*/
@ -177,8 +186,10 @@ public class CDL {
* Produce a JSONArray of JSONObjects from a comma delimited text string
* using a supplied JSONArray as the source of element names.
*
* @param names A JSONArray of strings.
* @param string The comma delimited text.
* @param names
* A JSONArray of strings.
* @param string
* The comma delimited text.
* @return A JSONArray of JSONObjects.
* @throws JSONException
*/
@ -190,8 +201,10 @@ public class CDL {
* Produce a JSONArray of JSONObjects from a comma delimited text string
* using a supplied JSONArray as the source of element names.
*
* @param names A JSONArray of strings.
* @param x A JSONTokener of the source text.
* @param names
* A JSONArray of strings.
* @param x
* A JSONTokener of the source text.
* @return A JSONArray of JSONObjects.
* @throws JSONException
*/
@ -200,7 +213,7 @@ public class CDL {
return null;
}
final JSONArray ja = new JSONArray();
for (; ; ) {
for (;;) {
final JSONObject jo = rowToJSONObject(names, x);
if (jo == null) {
break;
@ -218,7 +231,8 @@ public class CDL {
* first row will be a list of names obtained by inspecting the first
* JSONObject.
*
* @param ja A JSONArray of JSONObjects.
* @param ja
* A JSONArray of JSONObjects.
* @return A comma delimited text.
* @throws JSONException
*/
@ -238,8 +252,10 @@ public class CDL {
* a provided list of names. The list of names is not included in the
* output.
*
* @param names A JSONArray of strings.
* @param ja A JSONArray of JSONObjects.
* @param names
* A JSONArray of strings.
* @param ja
* A JSONArray of JSONObjects.
* @return A comma delimited text.
* @throws JSONException
*/

View File

@ -40,7 +40,8 @@ public class Cookie {
* encoded values. We encode '=' and ';' because we must. We encode '%' and
* '+' because they are meta characters in URL encoding.
*
* @param string The source string.
* @param string
* The source string.
* @return The escaped result.
*/
public static String escape(final String string) {
@ -54,7 +55,8 @@ public class Cookie {
sb.append('%');
sb.append(Character.forDigit((char) ((c >>> 4) & 0x0f), 16));
sb.append(Character.forDigit((char) (c & 0x0f), 16));
} else {
}
else {
sb.append(c);
}
}
@ -72,7 +74,8 @@ public class Cookie {
* validation of the parameters. It only converts the cookie string into
* a JSONObject.
*
* @param string The cookie specification string.
* @param string
* The cookie specification string.
* @return A JSONObject containing "name", "value", and possibly other
* members.
* @throws JSONException
@ -91,10 +94,12 @@ public class Cookie {
if (x.next() != '=') {
if (name.equals("secure")) {
value = Boolean.TRUE;
} else {
}
else {
throw x.syntaxError("Missing '=' in cookie parameter.");
}
} else {
}
else {
value = unescape(x.nextTo(';'));
x.next();
}
@ -110,7 +115,8 @@ public class Cookie {
* members, they will be appended to the cookie specification string.
* All other members are ignored.
*
* @param jo A JSONObject
* @param jo
* A JSONObject
* @return A cookie specification string
* @throws JSONException
*/
@ -142,7 +148,8 @@ public class Cookie {
* Convert <code>%</code><i>hh</i> sequences to single characters, and
* convert plus to space.
*
* @param string A string that may contain <code>+</code>
* @param string
* A string that may contain <code>+</code>
* &nbsp;<small>(plus)</small> and <code>%</code><i>hh</i>
* sequences.
* @return The unescaped string.
@ -154,7 +161,8 @@ public class Cookie {
char c = string.charAt(i);
if (c == '+') {
c = ' ';
} else if ((c == '%') && ((i + 2) < length)) {
}
else if ((c == '%') && ((i + 2) < length)) {
final int d = JSONTokener.dehexchar(string.charAt(i + 1));
final int e = JSONTokener.dehexchar(string.charAt(i + 2));
if ((d >= 0) && (e >= 0)) {

View File

@ -20,7 +20,8 @@ public class CookieList {
* cookielistJSONObject.put(cookieJSONObject.getString("name"),
* cookieJSONObject.getString("value"));
*
* @param string A cookie list string
* @param string
* A cookie list string
* @return A JSONObject
* @throws JSONException
*/
@ -42,7 +43,8 @@ public class CookieList {
* The pairs are separated by ';'. The characters '%', '+', '=', and ';'
* in the names and values are replaced by "%hh".
*
* @param jo A JSONObject
* @param jo
* A JSONObject
* @return A cookie list string
* @throws JSONException
*/

View File

@ -40,6 +40,7 @@ public class HTTP {
* Convert an HTTP header string into a JSONObject. It can be a request
* header or a response header. A request header will contain
* <p/>
*
* <pre>
* {
* Method: "POST" (for example),
@ -50,6 +51,7 @@ public class HTTP {
* <p/>
* A response header will contain
* <p/>
*
* <pre>
* {
* "HTTP-Version": "HTTP/1.1" (for example),
@ -61,6 +63,7 @@ public class HTTP {
* In addition, the other parameters in the header will be captured, using
* the HTTP field names as JSON names, so that
* <p/>
*
* <pre>
* Date: Sun, 26 May 2002 18:06:04 GMT
* Cookie: Q=q2=PPEAsg--; B=677gi6ouf29bn&b=2&f=s
@ -69,6 +72,7 @@ public class HTTP {
* <p/>
* become
* <p/>
*
* <pre>
* {...
* Date: "Sun, 26 May 2002 18:06:04 GMT",
@ -77,10 +81,11 @@ public class HTTP {
* ...}
* </pre>
* <p/>
* It does no further checking or conversion. It does not parse dates.
* It does not do '%' transforms on URLs.
* It does no further checking or conversion. It does not parse dates. It
* does not do '%' transforms on URLs.
*
* @param string An HTTP header string.
* @param string
* An HTTP header string.
* @return A JSONObject containing the elements and attributes
* of the XML string.
* @throws JSONException
@ -100,7 +105,8 @@ public class HTTP {
jo.put("Reason-Phrase", x.nextTo('\0'));
x.next();
} else {
}
else {
// Request
@ -123,6 +129,7 @@ public class HTTP {
/**
* Convert a JSONObject into an HTTP header. A request header must contain
* <p/>
*
* <pre>
* {
* Method: "POST" (for example),
@ -133,6 +140,7 @@ public class HTTP {
* <p/>
* A response header must contain
* <p/>
*
* <pre>
* {
* "HTTP-Version": "HTTP/1.1" (for example),
@ -141,12 +149,14 @@ public class HTTP {
* }
* </pre>
* <p/>
* Any other members of the JSONObject will be output as HTTP fields.
* The result will end with two CRLF pairs.
* Any other members of the JSONObject will be output as HTTP fields. The
* result will end with two CRLF pairs.
*
* @param jo A JSONObject
* @param jo
* A JSONObject
* @return An HTTP header string.
* @throws JSONException if the object does not contain enough
* @throws JSONException
* if the object does not contain enough
* information.
*/
public static String toString(final JSONObject jo) throws JSONException {
@ -159,7 +169,8 @@ public class HTTP {
sb.append(jo.getString("Status-Code"));
sb.append(' ');
sb.append(jo.getString("Reason-Phrase"));
} else if (jo.has("Method") && jo.has("Request-URI")) {
}
else if (jo.has("Method") && jo.has("Request-URI")) {
sb.append(jo.getString("Method"));
sb.append(' ');
sb.append('"');
@ -167,7 +178,8 @@ public class HTTP {
sb.append('"');
sb.append(' ');
sb.append(jo.getString("HTTP-Version"));
} else {
}
else {
throw new JSONException("Not enough material for an HTTP header.");
}
sb.append(CRLF);

View File

@ -12,7 +12,8 @@ public class HTTPTokener extends JSONTokener {
/**
* Construct an HTTPTokener from a string.
*
* @param string A source string.
* @param string
* A source string.
*/
public HTTPTokener(final String string) {
super(string);
@ -34,7 +35,7 @@ public class HTTPTokener extends JSONTokener {
while (Character.isWhitespace(c));
if ((c == '"') || (c == '\'')) {
q = c;
for (; ; ) {
for (;;) {
c = next();
if (c < ' ') {
throw syntaxError("Unterminated string.");
@ -45,7 +46,7 @@ public class HTTPTokener extends JSONTokener {
sb.append(c);
}
}
for (; ; ) {
for (;;) {
if ((c == 0) || Character.isWhitespace(c)) {
return sb.toString();
}

View File

@ -90,8 +90,10 @@ public class JSONArray {
/**
* Construct a JSONArray from a JSONTokener.
*
* @param x A JSONTokener
* @throws JSONException If there is a syntax error.
* @param x
* A JSONTokener
* @throws JSONException
* If there is a syntax error.
*/
public JSONArray(final JSONTokener x) throws JSONException {
this();
@ -100,11 +102,12 @@ public class JSONArray {
}
if (x.nextClean() != ']') {
x.back();
for (; ; ) {
for (;;) {
if (x.nextClean() == ',') {
x.back();
this.myArrayList.add(JSONObject.NULL);
} else {
}
else {
x.back();
this.myArrayList.add(x.nextValue());
}
@ -127,10 +130,12 @@ public class JSONArray {
/**
* Construct a JSONArray from a source JSON text.
*
* @param source A string that begins with <code>[</code>&nbsp;<small>(left
* @param source
* A string that begins with <code>[</code>&nbsp;<small>(left
* bracket)</small> and ends with <code>]</code>
* &nbsp;<small>(right bracket)</small>.
* @throws JSONException If there is a syntax error.
* @throws JSONException
* If there is a syntax error.
*/
public JSONArray(final String source) throws JSONException {
this(new JSONTokener(source));
@ -139,12 +144,13 @@ public class JSONArray {
/**
* Construct a JSONArray from a Collection.
*
* @param collection A Collection.
* @param collection
* A Collection.
*/
public JSONArray(final Collection<Object> collection) {
this.myArrayList = new ArrayList<Object>();
if (collection != null) {
for (Object aCollection : collection) {
for (final Object aCollection : collection) {
this.myArrayList.add(JSONObject.wrap(aCollection));
}
}
@ -153,7 +159,8 @@ public class JSONArray {
/**
* Construct a JSONArray from an array
*
* @throws JSONException If not an array.
* @throws JSONException
* If not an array.
*/
public JSONArray(final Object array) throws JSONException {
this();
@ -162,7 +169,8 @@ public class JSONArray {
for (int i = 0; i < length; i += 1) {
this.put(JSONObject.wrap(Array.get(array, i)));
}
} else {
}
else {
throw new JSONException("JSONArray initial value should be a string or collection or array.");
}
}
@ -170,9 +178,11 @@ public class JSONArray {
/**
* Get the object value associated with an index.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return An object value.
* @throws JSONException If there is no value for the index.
* @throws JSONException
* If there is no value for the index.
*/
public Object get(final int index) throws JSONException {
final Object object = this.opt(index);
@ -186,16 +196,19 @@ public class JSONArray {
* Get the boolean value associated with an index. The string values "true"
* and "false" are converted to boolean.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return The truth.
* @throws JSONException If there is no value for the index or if the value is not
* @throws JSONException
* If there is no value for the index or if the value is not
* convertible to boolean.
*/
public boolean getBoolean(final int index) throws JSONException {
final Object object = this.get(index);
if (object.equals(Boolean.FALSE) || ((object instanceof String) && ((String) object).equalsIgnoreCase("false"))) {
return false;
} else if (object.equals(Boolean.TRUE) || ((object instanceof String) && ((String) object).equalsIgnoreCase("true"))) {
}
else if (object.equals(Boolean.TRUE) || ((object instanceof String) && ((String) object).equalsIgnoreCase("true"))) {
return true;
}
throw new JSONException("JSONArray[" + index + "] is not a boolean.");
@ -204,16 +217,19 @@ public class JSONArray {
/**
* Get the double value associated with an index.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return The value.
* @throws JSONException If the key is not found or if the value cannot be converted
* @throws JSONException
* If the key is not found or if the value cannot be converted
* to a number.
*/
public double getDouble(final int index) throws JSONException {
final Object object = this.get(index);
try {
return object instanceof Number ? ((Number) object).doubleValue() : Double.parseDouble((String) object);
} catch (final Exception e) {
}
catch (final Exception e) {
throw new JSONException("JSONArray[" + index + "] is not a number.");
}
}
@ -221,15 +237,18 @@ public class JSONArray {
/**
* Get the int value associated with an index.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return The value.
* @throws JSONException If the key is not found or if the value is not a number.
* @throws JSONException
* If the key is not found or if the value is not a number.
*/
public int getInt(final int index) throws JSONException {
final Object object = this.get(index);
try {
return object instanceof Number ? ((Number) object).intValue() : Integer.parseInt((String) object);
} catch (final Exception e) {
}
catch (final Exception e) {
throw new JSONException("JSONArray[" + index + "] is not a number.");
}
}
@ -237,9 +256,11 @@ public class JSONArray {
/**
* Get the JSONArray associated with an index.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return A JSONArray value.
* @throws JSONException If there is no value for the index. or if the value is not a
* @throws JSONException
* If there is no value for the index. or if the value is not a
* JSONArray
*/
public JSONArray getJSONArray(final int index) throws JSONException {
@ -253,9 +274,11 @@ public class JSONArray {
/**
* Get the JSONObject associated with an index.
*
* @param index subscript
* @param index
* subscript
* @return A JSONObject value.
* @throws JSONException If there is no value for the index or if the value is not a
* @throws JSONException
* If there is no value for the index or if the value is not a
* JSONObject
*/
public JSONObject getJSONObject(final int index) throws JSONException {
@ -269,16 +292,19 @@ public class JSONArray {
/**
* Get the long value associated with an index.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return The value.
* @throws JSONException If the key is not found or if the value cannot be converted
* @throws JSONException
* If the key is not found or if the value cannot be converted
* to a number.
*/
public long getLong(final int index) throws JSONException {
final Object object = this.get(index);
try {
return object instanceof Number ? ((Number) object).longValue() : Long.parseLong((String) object);
} catch (final Exception e) {
}
catch (final Exception e) {
throw new JSONException("JSONArray[" + index + "] is not a number.");
}
}
@ -286,9 +312,11 @@ public class JSONArray {
/**
* Get the string associated with an index.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return A string value.
* @throws JSONException If there is no string value for the index.
* @throws JSONException
* If there is no string value for the index.
*/
public String getString(final int index) throws JSONException {
final Object object = this.get(index);
@ -301,7 +329,8 @@ public class JSONArray {
/**
* Determine if the value is null.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return true if the value at the index is null, or if there is no value.
*/
public boolean isNull(final int index) {
@ -313,9 +342,11 @@ public class JSONArray {
* <code>separator</code> string is inserted between each element. Warning:
* This method assumes that the data structure is acyclical.
*
* @param separator A string that will be inserted between the elements.
* @param separator
* A string that will be inserted between the elements.
* @return a string.
* @throws JSONException If the array contains an invalid number.
* @throws JSONException
* If the array contains an invalid number.
*/
public String join(final String separator) throws JSONException {
final int len = this.length();
@ -342,7 +373,8 @@ public class JSONArray {
/**
* Get the optional object value associated with an index.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return An object value, or null if there is no object at that index.
*/
public Object opt(final int index) {
@ -354,7 +386,8 @@ public class JSONArray {
* if there is no value at that index, or if the value is not Boolean.TRUE
* or the String "true".
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return The truth.
*/
public boolean optBoolean(final int index) {
@ -366,14 +399,17 @@ public class JSONArray {
* defaultValue if there is no value at that index or if it is not a Boolean
* or the String "true" or "false" (case insensitive).
*
* @param index The index must be between 0 and length() - 1.
* @param defaultValue A boolean default.
* @param index
* The index must be between 0 and length() - 1.
* @param defaultValue
* A boolean default.
* @return The truth.
*/
public boolean optBoolean(final int index, final boolean defaultValue) {
try {
return this.getBoolean(index);
} catch (final Exception e) {
}
catch (final Exception e) {
return defaultValue;
}
}
@ -383,7 +419,8 @@ public class JSONArray {
* if there is no value for the index, or if the value is not a number and
* cannot be converted to a number.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return The value.
*/
public double optDouble(final int index) {
@ -395,14 +432,17 @@ public class JSONArray {
* is returned if there is no value for the index, or if the value is not a
* number and cannot be converted to a number.
*
* @param index subscript
* @param defaultValue The default value.
* @param index
* subscript
* @param defaultValue
* The default value.
* @return The value.
*/
public double optDouble(final int index, final double defaultValue) {
try {
return this.getDouble(index);
} catch (final Exception e) {
}
catch (final Exception e) {
return defaultValue;
}
}
@ -412,7 +452,8 @@ public class JSONArray {
* there is no value for the index, or if the value is not a number and
* cannot be converted to a number.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return The value.
*/
public int optInt(final int index) {
@ -424,14 +465,17 @@ public class JSONArray {
* returned if there is no value for the index, or if the value is not a
* number and cannot be converted to a number.
*
* @param index The index must be between 0 and length() - 1.
* @param defaultValue The default value.
* @param index
* The index must be between 0 and length() - 1.
* @param defaultValue
* The default value.
* @return The value.
*/
public int optInt(final int index, final int defaultValue) {
try {
return this.getInt(index);
} catch (final Exception e) {
}
catch (final Exception e) {
return defaultValue;
}
}
@ -439,7 +483,8 @@ public class JSONArray {
/**
* Get the optional JSONArray associated with an index.
*
* @param index subscript
* @param index
* subscript
* @return A JSONArray value, or null if the index has no value, or if the
* value is not a JSONArray.
*/
@ -453,7 +498,8 @@ public class JSONArray {
* the key is not found, or null if the index has no value, or if the value
* is not a JSONObject.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return A JSONObject value.
*/
public JSONObject optJSONObject(final int index) {
@ -466,7 +512,8 @@ public class JSONArray {
* there is no value for the index, or if the value is not a number and
* cannot be converted to a number.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return The value.
*/
public long optLong(final int index) {
@ -478,14 +525,17 @@ public class JSONArray {
* returned if there is no value for the index, or if the value is not a
* number and cannot be converted to a number.
*
* @param index The index must be between 0 and length() - 1.
* @param defaultValue The default value.
* @param index
* The index must be between 0 and length() - 1.
* @param defaultValue
* The default value.
* @return The value.
*/
public long optLong(final int index, final long defaultValue) {
try {
return this.getLong(index);
} catch (final Exception e) {
}
catch (final Exception e) {
return defaultValue;
}
}
@ -495,7 +545,8 @@ public class JSONArray {
* empty string if there is no value at that index. If the value is not a
* string and is not null, then it is coverted to a string.
*
* @param index The index must be between 0 and length() - 1.
* @param index
* The index must be between 0 and length() - 1.
* @return A String value.
*/
public String optString(final int index) {
@ -506,8 +557,10 @@ public class JSONArray {
* Get the optional string associated with an index. The defaultValue is
* returned if the key is not found.
*
* @param index The index must be between 0 and length() - 1.
* @param defaultValue The default value.
* @param index
* The index must be between 0 and length() - 1.
* @param defaultValue
* The default value.
* @return A String value.
*/
public String optString(final int index, final String defaultValue) {
@ -518,7 +571,8 @@ public class JSONArray {
/**
* Append a boolean value. This increases the array's length by one.
*
* @param value A boolean value.
* @param value
* A boolean value.
* @return this.
*/
public JSONArray put(final boolean value) {
@ -530,7 +584,8 @@ public class JSONArray {
* Put a value in the JSONArray, where the value will be a JSONArray which
* is produced from a Collection.
*
* @param value A Collection value.
* @param value
* A Collection value.
* @return this.
*/
public JSONArray put(final Collection<Object> value) {
@ -541,9 +596,11 @@ public class JSONArray {
/**
* Append a double value. This increases the array's length by one.
*
* @param value A double value.
* @param value
* A double value.
* @return this.
* @throws JSONException if the value is not finite.
* @throws JSONException
* if the value is not finite.
*/
public JSONArray put(final double value) throws JSONException {
final Double d = value;
@ -555,7 +612,8 @@ public class JSONArray {
/**
* Append an int value. This increases the array's length by one.
*
* @param value An int value.
* @param value
* An int value.
* @return this.
*/
public JSONArray put(final int value) {
@ -566,7 +624,8 @@ public class JSONArray {
/**
* Append an long value. This increases the array's length by one.
*
* @param value A long value.
* @param value
* A long value.
* @return this.
*/
public JSONArray put(final long value) {
@ -578,7 +637,8 @@ public class JSONArray {
* Put a value in the JSONArray, where the value will be a JSONObject which
* is produced from a Map.
*
* @param value A Map value.
* @param value
* A Map value.
* @return this.
*/
public JSONArray put(final Map<String, Object> value) {
@ -589,7 +649,8 @@ public class JSONArray {
/**
* Append an object value. This increases the array's length by one.
*
* @param value An object value. The value should be a Boolean, Double,
* @param value
* An object value. The value should be a Boolean, Double,
* Integer, JSONArray, JSONObject, Long, or String, or the
* JSONObject.NULL object.
* @return this.
@ -604,10 +665,13 @@ public class JSONArray {
* than the length of the JSONArray, then null elements will be added as
* necessary to pad it out.
*
* @param index The subscript.
* @param value A boolean value.
* @param index
* The subscript.
* @param value
* A boolean value.
* @return this.
* @throws JSONException If the index is negative.
* @throws JSONException
* If the index is negative.
*/
public JSONArray put(final int index, final boolean value) throws JSONException {
this.put(index, value ? Boolean.TRUE : Boolean.FALSE);
@ -618,10 +682,13 @@ public class JSONArray {
* Put a value in the JSONArray, where the value will be a JSONArray which
* is produced from a Collection.
*
* @param index The subscript.
* @param value A Collection value.
* @param index
* The subscript.
* @param value
* A Collection value.
* @return this.
* @throws JSONException If the index is negative or if the value is not finite.
* @throws JSONException
* If the index is negative or if the value is not finite.
*/
public JSONArray put(final int index, final Collection<Object> value) throws JSONException {
this.put(index, new JSONArray(value));
@ -633,10 +700,13 @@ public class JSONArray {
* the JSONArray, then null elements will be added as necessary to pad it
* out.
*
* @param index The subscript.
* @param value A double value.
* @param index
* The subscript.
* @param value
* A double value.
* @return this.
* @throws JSONException If the index is negative or if the value is not finite.
* @throws JSONException
* If the index is negative or if the value is not finite.
*/
public JSONArray put(final int index, final double value) throws JSONException {
this.put(index, new Double(value));
@ -648,10 +718,13 @@ public class JSONArray {
* the JSONArray, then null elements will be added as necessary to pad it
* out.
*
* @param index The subscript.
* @param value An int value.
* @param index
* The subscript.
* @param value
* An int value.
* @return this.
* @throws JSONException If the index is negative.
* @throws JSONException
* If the index is negative.
*/
public JSONArray put(final int index, final int value) throws JSONException {
this.put(index, new Integer(value));
@ -663,10 +736,13 @@ public class JSONArray {
* the JSONArray, then null elements will be added as necessary to pad it
* out.
*
* @param index The subscript.
* @param value A long value.
* @param index
* The subscript.
* @param value
* A long value.
* @return this.
* @throws JSONException If the index is negative.
* @throws JSONException
* If the index is negative.
*/
public JSONArray put(final int index, final long value) throws JSONException {
this.put(index, new Long(value));
@ -677,10 +753,13 @@ public class JSONArray {
* Put a value in the JSONArray, where the value will be a JSONObject that
* is produced from a Map.
*
* @param index The subscript.
* @param value The Map value.
* @param index
* The subscript.
* @param value
* The Map value.
* @return this.
* @throws JSONException If the index is negative or if the the value is an invalid
* @throws JSONException
* If the index is negative or if the the value is an invalid
* number.
*/
public JSONArray put(final int index, final Map<String, Object> value) throws JSONException {
@ -693,12 +772,15 @@ public class JSONArray {
* than the length of the JSONArray, then null elements will be added as
* necessary to pad it out.
*
* @param index The subscript.
* @param value The value to put into the array. The value should be a
* @param index
* The subscript.
* @param value
* The value to put into the array. The value should be a
* Boolean, Double, Integer, JSONArray, JSONObject, Long, or
* String, or the JSONObject.NULL object.
* @return this.
* @throws JSONException If the index is negative or if the the value is an invalid
* @throws JSONException
* If the index is negative or if the the value is an invalid
* number.
*/
public JSONArray put(final int index, final Object value) throws JSONException {
@ -708,7 +790,8 @@ public class JSONArray {
}
if (index < this.length()) {
this.myArrayList.set(index, value);
} else {
}
else {
while (index != this.length()) {
this.put(JSONObject.NULL);
}
@ -720,7 +803,8 @@ public class JSONArray {
/**
* Remove an index and close the hole.
*
* @param index The index of the element to be removed.
* @param index
* The index of the element to be removed.
* @return The value that was associated with the index, or null if there
* was no value.
*/
@ -732,7 +816,8 @@ public class JSONArray {
* Determine if two JSONArrays are similar.
* They must contain similar sequences.
*
* @param other The other JSONArray
* @param other
* The other JSONArray
* @return true if they are equal
*/
public boolean similar(final Object other) {
@ -750,11 +835,13 @@ public class JSONArray {
if (!((JSONObject) valueThis).similar(valueOther)) {
return false;
}
} else if (valueThis instanceof JSONArray) {
}
else if (valueThis instanceof JSONArray) {
if (!((JSONArray) valueThis).similar(valueOther)) {
return false;
}
} else if (!valueThis.equals(valueOther)) {
}
else if (!valueThis.equals(valueOther)) {
return false;
}
}
@ -765,11 +852,13 @@ public class JSONArray {
* Produce a JSONObject by combining a JSONArray of names with the values of
* this JSONArray.
*
* @param names A JSONArray containing a list of key strings. These will be
* @param names
* A JSONArray containing a list of key strings. These will be
* paired with the values.
* @return A JSONObject, or null if there are no names or if this JSONArray
* has no values.
* @throws JSONException If any of the names are null.
* @throws JSONException
* If any of the names are null.
*/
public JSONObject toJSONObject(final JSONArray names) throws JSONException {
if ((names == null) || (names.length() == 0) || (this.length() == 0)) {
@ -797,7 +886,8 @@ public class JSONArray {
public String toString() {
try {
return this.toString(0);
} catch (final Exception e) {
}
catch (final Exception e) {
return null;
}
}
@ -806,7 +896,8 @@ public class JSONArray {
* Make a prettyprinted JSON text of this JSONArray. Warning: This method
* assumes that the data structure is acyclical.
*
* @param indentFactor The number of spaces to add to each level of indentation.
* @param indentFactor
* The number of spaces to add to each level of indentation.
* @return a printable, displayable, transmittable representation of the
* object, beginning with <code>[</code>&nbsp;<small>(left
* bracket)</small> and ending with <code>]</code>
@ -839,8 +930,10 @@ public class JSONArray {
* <p/>
* Warning: This method assumes that the data structure is acyclical.
*
* @param indentFactor The number of spaces to add to each level of indentation.
* @param indent The indention of the top level.
* @param indentFactor
* The number of spaces to add to each level of indentation.
* @param indent
* The indention of the top level.
* @return The writer.
* @throws JSONException
*/
@ -852,7 +945,8 @@ public class JSONArray {
if (length == 1) {
JSONObject.writeValue(writer, this.myArrayList.get(0), indentFactor, indent);
} else if (length != 0) {
}
else if (length != 0) {
final int newindent = indent + indentFactor;
for (int i = 0; i < length; i += 1) {
@ -873,7 +967,8 @@ public class JSONArray {
}
writer.write(']');
return writer;
} catch (final IOException e) {
}
catch (final IOException e) {
throw new JSONException(e);
}
}

View File

@ -13,7 +13,8 @@ public class JSONException extends RuntimeException {
/**
* Constructs a JSONException with an explanatory message.
*
* @param message Detail about the reason for the exception.
* @param message
* Detail about the reason for the exception.
*/
public JSONException(final String message) {
super(message);
@ -22,7 +23,8 @@ public class JSONException extends RuntimeException {
/**
* Constructs a new JSONException with the specified cause.
*
* @param cause The cause.
* @param cause
* The cause.
*/
public JSONException(final Throwable cause) {
super(cause.getMessage());

View File

@ -15,9 +15,12 @@ public class JSONML {
/**
* Parse XML values and store them in a JSONArray.
*
* @param x The XMLTokener containing the source string.
* @param arrayForm true if array form, false if object form.
* @param ja The JSONArray that is containing the current tag or null
* @param x
* The XMLTokener containing the source string.
* @param arrayForm
* true if array form, false if object form.
* @param ja
* The JSONArray that is containing the current tag or null
* if we are at the outermost level.
* @return A JSONArray if the value is the outermost tag, otherwise null.
* @throws JSONException
@ -58,7 +61,8 @@ public class JSONML {
throw x.syntaxError("Misshaped close tag");
}
return token;
} else if (token == XML.BANG) {
}
else if (token == XML.BANG) {
// <!
@ -66,44 +70,53 @@ public class JSONML {
if (c == '-') {
if (x.next() == '-') {
x.skipPast("-->");
} else {
}
else {
x.back();
}
} else if (c == '[') {
}
else if (c == '[') {
token = x.nextToken();
if (token.equals("CDATA") && (x.next() == '[')) {
if (ja != null) {
ja.put(x.nextCDATA());
}
} else {
}
else {
throw x.syntaxError("Expected 'CDATA['");
}
} else {
}
else {
i = 1;
do {
token = x.nextMeta();
if (token == null) {
throw x.syntaxError("Missing '>' after '<!'.");
} else if (token == XML.LT) {
}
else if (token == XML.LT) {
i += 1;
} else if (token == XML.GT) {
}
else if (token == XML.GT) {
i -= 1;
}
}
while (i > 0);
}
} else if (token == XML.QUEST) {
}
else if (token == XML.QUEST) {
// <?
x.skipPast("?>");
} else {
}
else {
throw x.syntaxError("Misshaped tag");
}
// Open tag <
} else {
}
else {
if (!(token instanceof String)) {
throw x.syntaxError("Bad tagName '" + token + "'.");
}
@ -115,14 +128,15 @@ public class JSONML {
if (ja != null) {
ja.put(newja);
}
} else {
}
else {
newjo.put("tagName", tagName);
if (ja != null) {
ja.put(newjo);
}
}
token = null;
for (; ; ) {
for (;;) {
if (token == null) {
token = x.nextToken();
}
@ -147,7 +161,8 @@ public class JSONML {
}
newjo.accumulate(attribute, XML.stringToValue((String) token));
token = null;
} else {
}
else {
newjo.accumulate(attribute, "");
}
}
@ -164,14 +179,16 @@ public class JSONML {
if (ja == null) {
if (arrayForm) {
return newja;
} else {
}
else {
return newjo;
}
}
// Content, between <...> and </...>
} else {
}
else {
if (token != XML.GT) {
throw x.syntaxError("Misshaped tag");
}
@ -187,14 +204,16 @@ public class JSONML {
if (ja == null) {
if (arrayForm) {
return newja;
} else {
}
else {
return newjo;
}
}
}
}
}
} else {
}
else {
if (ja != null) {
ja.put(token instanceof String ? XML.stringToValue((String) token) : token);
}
@ -211,7 +230,8 @@ public class JSONML {
* JSONArrays will represent the child tags.
* Comments, prologs, DTDs, and <code>&lt;[ [ ]]></code> are ignored.
*
* @param string The source string.
* @param string
* The source string.
* @return A JSONArray containing the structured data from the XML string.
* @throws JSONException
*/
@ -228,7 +248,8 @@ public class JSONML {
* JSONArrays will represent the child content and tags.
* Comments, prologs, DTDs, and <code>&lt;[ [ ]]></code> are ignored.
*
* @param x An XMLTokener.
* @param x
* An XMLTokener.
* @return A JSONArray containing the structured data from the XML string.
* @throws JSONException
*/
@ -246,7 +267,8 @@ public class JSONML {
* <p/>
* Comments, prologs, DTDs, and <code>&lt;[ [ ]]></code> are ignored.
*
* @param x An XMLTokener of the XML source text.
* @param x
* An XMLTokener of the XML source text.
* @return A JSONObject containing the structured data from the XML string.
* @throws JSONException
*/
@ -264,7 +286,8 @@ public class JSONML {
* <p/>
* Comments, prologs, DTDs, and <code>&lt;[ [ ]]></code> are ignored.
*
* @param string The XML source text.
* @param string
* The XML source text.
* @return A JSONObject containing the structured data from the XML string.
* @throws JSONException
*/
@ -275,7 +298,8 @@ public class JSONML {
/**
* Reverse the JSONML transformation, making an XML text from a JSONArray.
*
* @param ja A JSONArray.
* @param ja
* A JSONArray.
* @return An XML string.
* @throws JSONException
*/
@ -319,7 +343,8 @@ public class JSONML {
sb.append('"');
}
}
} else {
}
else {
i = 1;
}
@ -329,7 +354,8 @@ public class JSONML {
if (i >= length) {
sb.append('/');
sb.append('>');
} else {
}
else {
sb.append('>');
do {
object = ja.get(i);
@ -337,9 +363,11 @@ public class JSONML {
if (object != null) {
if (object instanceof String) {
sb.append(XML.escape(object.toString()));
} else if (object instanceof JSONObject) {
}
else if (object instanceof JSONObject) {
sb.append(toString((JSONObject) object));
} else if (object instanceof JSONArray) {
}
else if (object instanceof JSONArray) {
sb.append(toString((JSONArray) object));
}
}
@ -359,7 +387,8 @@ public class JSONML {
* then it must have a "childNodes" property containing an array of objects.
* The other properties are attributes with string values.
*
* @param jo A JSONObject.
* @param jo
* A JSONObject.
* @return An XML string.
* @throws JSONException
*/
@ -410,7 +439,8 @@ public class JSONML {
if (ja == null) {
sb.append('/');
sb.append('>');
} else {
}
else {
sb.append('>');
length = ja.length();
for (i = 0; i < length; i += 1) {
@ -418,11 +448,14 @@ public class JSONML {
if (object != null) {
if (object instanceof String) {
sb.append(XML.escape(object.toString()));
} else if (object instanceof JSONObject) {
}
else if (object instanceof JSONObject) {
sb.append(toString((JSONObject) object));
} else if (object instanceof JSONArray) {
}
else if (object instanceof JSONArray) {
sb.append(toString((JSONArray) object));
} else {
}
else {
sb.append(object.toString());
}
}

View File

@ -16,12 +16,14 @@ import java.io.StringWriter;
* these methods return the JSONWriter instance, permitting cascade style. For
* example,
* <p/>
*
* <pre>
* myString = new JSONStringer().object().key(&quot;JSON&quot;).value(&quot;Hello, World!&quot;).endObject().toString();
* </pre>
* <p/>
* which produces the string
* <p/>
*
* <pre>
* {"JSON":"Hello, World!"}
* </pre>

View File

@ -1,6 +1,11 @@
package com.intellectualcrafters.json;
import java.io.*;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.io.StringReader;
/**
* A JSONTokener takes a source string and extracts characters and tokens from
@ -23,7 +28,8 @@ public class JSONTokener {
/**
* Construct a JSONTokener from a Reader.
*
* @param reader A reader.
* @param reader
* A reader.
*/
public JSONTokener(final Reader reader) {
this.reader = reader.markSupported() ? reader : new BufferedReader(reader);
@ -38,7 +44,8 @@ public class JSONTokener {
/**
* Construct a JSONTokener from an InputStream.
*
* @param inputStream The source.
* @param inputStream
* The source.
*/
public JSONTokener(final InputStream inputStream) throws JSONException {
this(new InputStreamReader(inputStream));
@ -47,7 +54,8 @@ public class JSONTokener {
/**
* Construct a JSONTokener from a string.
*
* @param s A source string.
* @param s
* A source string.
*/
public JSONTokener(final String s) {
this(new StringReader(s));
@ -56,7 +64,8 @@ public class JSONTokener {
/**
* Get the hex value of a character (base16).
*
* @param c A character between '0' and '9' or between 'A' and 'F' or
* @param c
* A character between '0' and '9' or between 'A' and 'F' or
* between 'a' and 'f'.
* @return An int between 0 and 15, or -1 if c was not a hex digit.
*/
@ -117,10 +126,12 @@ public class JSONTokener {
if (this.usePrevious) {
this.usePrevious = false;
c = this.previous;
} else {
}
else {
try {
c = this.reader.read();
} catch (final IOException exception) {
}
catch (final IOException exception) {
throw new JSONException(exception);
}
@ -133,10 +144,12 @@ public class JSONTokener {
if (this.previous == '\r') {
this.line += 1;
this.character = c == '\n' ? 0 : 1;
} else if (c == '\n') {
}
else if (c == '\n') {
this.line += 1;
this.character = 0;
} else {
}
else {
this.character += 1;
}
this.previous = (char) c;
@ -147,9 +160,11 @@ public class JSONTokener {
* Consume the next character, and check that it matches a specified
* character.
*
* @param c The character to match.
* @param c
* The character to match.
* @return The character.
* @throws JSONException if the character does not match.
* @throws JSONException
* if the character does not match.
*/
public char next(final char c) throws JSONException {
final char n = this.next();
@ -162,9 +177,11 @@ public class JSONTokener {
/**
* Get the next n characters.
*
* @param n The number of characters to take.
* @param n
* The number of characters to take.
* @return A string of n characters.
* @throws JSONException Substring bounds error if there are not
* @throws JSONException
* Substring bounds error if there are not
* n characters remaining in the source string.
*/
public String next(final int n) throws JSONException {
@ -192,7 +209,7 @@ public class JSONTokener {
* @throws JSONException
*/
public char nextClean() throws JSONException {
for (; ; ) {
for (;;) {
final char c = this.next();
if ((c == 0) || (c > ' ')) {
return c;
@ -206,16 +223,18 @@ public class JSONTokener {
* allow strings in single quotes, but an implementation is allowed to
* accept them.
*
* @param quote The quoting character, either <code>"</code>
* @param quote
* The quoting character, either <code>"</code>
* &nbsp;<small>(double quote)</small> or <code>'</code>
* &nbsp;<small>(single quote)</small>.
* @return A String.
* @throws JSONException Unterminated string.
* @throws JSONException
* Unterminated string.
*/
public String nextString(final char quote) throws JSONException {
char c;
final StringBuilder sb = new StringBuilder();
for (; ; ) {
for (;;) {
c = this.next();
switch (c) {
case 0:
@ -266,12 +285,13 @@ public class JSONTokener {
* Get the text up but not including the specified character or the
* end of line, whichever comes first.
*
* @param delimiter A delimiter character.
* @param delimiter
* A delimiter character.
* @return A string.
*/
public String nextTo(final char delimiter) throws JSONException {
final StringBuilder sb = new StringBuilder();
for (; ; ) {
for (;;) {
final char c = this.next();
if ((c == delimiter) || (c == 0) || (c == '\n') || (c == '\r')) {
if (c != 0) {
@ -287,13 +307,14 @@ public class JSONTokener {
* Get the text up but not including one of the specified delimiter
* characters or the end of line, whichever comes first.
*
* @param delimiters A set of delimiter characters.
* @param delimiters
* A set of delimiter characters.
* @return A string, trimmed.
*/
public String nextTo(final String delimiters) throws JSONException {
char c;
final StringBuilder sb = new StringBuilder();
for (; ; ) {
for (;;) {
c = this.next();
if ((delimiters.indexOf(c) >= 0) || (c == 0) || (c == '\n') || (c == '\r')) {
if (c != 0) {
@ -310,7 +331,8 @@ public class JSONTokener {
* JSONArray, JSONObject, Long, or String, or the JSONObject.NULL object.
*
* @return An object.
* @throws JSONException If syntax error.
* @throws JSONException
* If syntax error.
*/
public Object nextValue() throws JSONException {
char c = this.nextClean();
@ -354,7 +376,8 @@ public class JSONTokener {
* Skip characters until the next character is the requested character.
* If the requested character is not found, no characters are skipped.
*
* @param to A character to skip to.
* @param to
* A character to skip to.
* @return The requested character, or zero if the requested character
* is not found.
*/
@ -376,7 +399,8 @@ public class JSONTokener {
}
}
while (c != to);
} catch (final IOException exception) {
}
catch (final IOException exception) {
throw new JSONException(exception);
}
this.back();
@ -386,7 +410,8 @@ public class JSONTokener {
/**
* Make a JSONException to signal a syntax error.
*
* @param message The error message.
* @param message
* The error message.
* @return A JSONException object, suitable for throwing
*/
public JSONException syntaxError(final String message) {

View File

@ -17,12 +17,14 @@ import java.io.Writer;
* these methods return the JSONWriter instance, permitting a cascade style. For
* example,
* <p/>
*
* <pre>
* new JSONWriter(myWriter).object().key(&quot;JSON&quot;).value(&quot;Hello, World!&quot;).endObject();
* </pre>
* <p/>
* which writes
* <p/>
*
* <pre>
* {"JSON":"Hello, World!"}
* </pre>
@ -79,9 +81,11 @@ public class JSONWriter {
/**
* Append a value.
*
* @param string A string value.
* @param string
* A string value.
* @return this
* @throws JSONException If the value is out of sequence.
* @throws JSONException
* If the value is out of sequence.
*/
private JSONWriter append(final String string) throws JSONException {
if (string == null) {
@ -93,7 +97,8 @@ public class JSONWriter {
this.writer.write(',');
}
this.writer.write(string);
} catch (final IOException e) {
}
catch (final IOException e) {
throw new JSONException(e);
}
if (this.mode == 'o') {
@ -111,7 +116,8 @@ public class JSONWriter {
* <code>endArray</code> method must be called to mark the array's end.
*
* @return this
* @throws JSONException If the nesting is too deep, or if the object is
* @throws JSONException
* If the nesting is too deep, or if the object is
* started in the wrong place (for example as a key or after the
* end of the
* outermost array or object).
@ -129,10 +135,13 @@ public class JSONWriter {
/**
* End something.
*
* @param mode Mode
* @param c Closing character
* @param mode
* Mode
* @param c
* Closing character
* @return this
* @throws JSONException If unbalanced.
* @throws JSONException
* If unbalanced.
*/
private JSONWriter end(final char mode, final char c) throws JSONException {
if (this.mode != mode) {
@ -141,7 +150,8 @@ public class JSONWriter {
this.pop(mode);
try {
this.writer.write(c);
} catch (final IOException e) {
}
catch (final IOException e) {
throw new JSONException(e);
}
this.comma = true;
@ -153,7 +163,8 @@ public class JSONWriter {
* <code>array</code>.
*
* @return this
* @throws JSONException If incorrectly nested.
* @throws JSONException
* If incorrectly nested.
*/
public JSONWriter endArray() throws JSONException {
return this.end('a', ']');
@ -164,7 +175,8 @@ public class JSONWriter {
* <code>object</code>.
*
* @return this
* @throws JSONException If incorrectly nested.
* @throws JSONException
* If incorrectly nested.
*/
public JSONWriter endObject() throws JSONException {
return this.end('k', '}');
@ -174,9 +186,11 @@ public class JSONWriter {
* Append a key. The key will be associated with the next value. In an
* object, every value must be preceded by a key.
*
* @param string A key string.
* @param string
* A key string.
* @return this
* @throws JSONException If the key is out of place. For example, keys
* @throws JSONException
* If the key is out of place. For example, keys
* do not belong in arrays or if the key is null.
*/
public JSONWriter key(final String string) throws JSONException {
@ -194,7 +208,8 @@ public class JSONWriter {
this.comma = false;
this.mode = 'o';
return this;
} catch (final IOException e) {
}
catch (final IOException e) {
throw new JSONException(e);
}
}
@ -207,7 +222,8 @@ public class JSONWriter {
* <code>endObject</code> method must be called to mark the object's end.
*
* @return this
* @throws JSONException If the nesting is too deep, or if the object is
* @throws JSONException
* If the nesting is too deep, or if the object is
* started in the wrong place (for example as a key or after the
* end of the
* outermost array or object).
@ -229,8 +245,10 @@ public class JSONWriter {
/**
* Pop an array or object scope.
*
* @param c The scope to close.
* @throws JSONException If nesting is wrong.
* @param c
* The scope to close.
* @throws JSONException
* If nesting is wrong.
*/
private void pop(final char c) throws JSONException {
if (this.top <= 0) {
@ -247,8 +265,10 @@ public class JSONWriter {
/**
* Push an array or object scope.
*
* @param jo The scope to open.
* @throws JSONException If nesting is too deep.
* @param jo
* The scope to open.
* @throws JSONException
* If nesting is too deep.
*/
private void push(final JSONObject jo) throws JSONException {
if (this.top >= maxdepth) {
@ -263,7 +283,8 @@ public class JSONWriter {
* Append either the value <code>true</code> or the value <code>false</code>
* .
*
* @param b A boolean.
* @param b
* A boolean.
* @return this
* @throws JSONException
*/
@ -274,9 +295,11 @@ public class JSONWriter {
/**
* Append a double value.
*
* @param d A double.
* @param d
* A double.
* @return this
* @throws JSONException If the number is not finite.
* @throws JSONException
* If the number is not finite.
*/
public JSONWriter value(final double d) throws JSONException {
return this.value(new Double(d));
@ -285,7 +308,8 @@ public class JSONWriter {
/**
* Append a long value.
*
* @param l A long.
* @param l
* A long.
* @return this
* @throws JSONException
*/
@ -296,11 +320,13 @@ public class JSONWriter {
/**
* Append an object value.
*
* @param object The object to append. It can be null, or a Boolean, Number,
* @param object
* The object to append. It can be null, or a Boolean, Number,
* String, JSONObject, or JSONArray, or an object that implements
* JSONString.
* @return this
* @throws JSONException If the value is out of sequence.
* @throws JSONException
* If the value is out of sequence.
*/
public JSONWriter value(final Object object) throws JSONException {
return this.append(JSONObject.valueToString(object));

View File

@ -8,11 +8,8 @@ package com.intellectualcrafters.json;
* than 3 bytes. Every byte contributes 7 bits to the character. ASCII is
* unmodified.
* <p/>
* Kim UTF-8
* one byte U+007F U+007F
* two bytes U+3FFF U+07FF
* three bytes U+10FFF U+FFFF
* four bytes U+10FFFF
* Kim UTF-8 one byte U+007F U+007F two bytes U+3FFF U+07FF three bytes U+10FFF
* U+FFFF four bytes U+10FFFF
* <p/>
* Characters in the ranges U+0800..U+3FFF and U+10000..U+10FFFF will be one
* byte smaller when encoded in Kim compared to UTF-8.
@ -20,12 +17,12 @@ package com.intellectualcrafters.json;
* Kim is beneficial when using scripts such as Old South Arabian, Aramaic,
* Avestan, Balinese, Batak, Bopomofo, Buginese, Buhid, Carian, Cherokee,
* Coptic, Cyrillic, Deseret, Egyptian Hieroglyphs, Ethiopic, Georgian,
* Glagolitic, Gothic, Hangul Jamo, Hanunoo, Hiragana, Kanbun, Kaithi,
* Kannada, Katakana, Kharoshthi, Khmer, Lao, Lepcha, Limbu, Lycian, Lydian,
* Malayalam, Mandaic, Meroitic, Miao, Mongolian, Myanmar, New Tai Lue,
* Ol Chiki, Old Turkic, Oriya, Osmanya, Pahlavi, Parthian, Phags-Pa,
* Phoenician, Samaritan, Sharada, Sinhala, Sora Sompeng, Tagalog, Tagbanwa,
* Takri, Tai Le, Tai Tham, Tamil, Telugu, Thai, Tibetan, Tifinagh, UCAS.
* Glagolitic, Gothic, Hangul Jamo, Hanunoo, Hiragana, Kanbun, Kaithi, Kannada,
* Katakana, Kharoshthi, Khmer, Lao, Lepcha, Limbu, Lycian, Lydian, Malayalam,
* Mandaic, Meroitic, Miao, Mongolian, Myanmar, New Tai Lue, Ol Chiki, Old
* Turkic, Oriya, Osmanya, Pahlavi, Parthian, Phags-Pa, Phoenician, Samaritan,
* Sharada, Sinhala, Sora Sompeng, Tagalog, Tagbanwa, Takri, Tai Le, Tai Tham,
* Tamil, Telugu, Thai, Tibetan, Tifinagh, UCAS.
* <p/>
* A kim object can be constructed from an ordinary UTF-16 string, or from a
* byte array. A kim object can produce a UTF-16 string.
@ -59,9 +56,12 @@ public class Kim {
/**
* Make a kim from a portion of a byte array.
*
* @param bytes A byte array.
* @param from The index of the first byte.
* @param thru The index of the last byte plus one.
* @param bytes
* A byte array.
* @param from
* The index of the first byte.
* @param thru
* The index of the last byte plus one.
*/
public Kim(final byte[] bytes, final int from, final int thru) {
@ -88,8 +88,10 @@ public class Kim {
/**
* Make a kim from a byte array.
*
* @param bytes The byte array.
* @param length The number of bytes.
* @param bytes
* The byte array.
* @param length
* The number of bytes.
*/
public Kim(final byte[] bytes, final int length) {
this(bytes, 0, length);
@ -99,9 +101,12 @@ public class Kim {
* Make a new kim from a substring of an existing kim. The coordinates are
* in byte units, not character units.
*
* @param kim The source of bytes.
* @param from The point at which to take bytes.
* @param thru The point at which to stop taking bytes.
* @param kim
* The source of bytes.
* @param from
* The point at which to take bytes.
* @param thru
* The point at which to stop taking bytes.
*/
public Kim(final Kim kim, final int from, final int thru) {
this(kim.bytes, from, thru);
@ -110,8 +115,10 @@ public class Kim {
/**
* Make a kim from a string.
*
* @param string The string.
* @throws JSONException if surrogate pair mismatch.
* @param string
* The string.
* @throws JSONException
* if surrogate pair mismatch.
*/
public Kim(final String string) throws JSONException {
final int stringLength = string.length();
@ -126,9 +133,11 @@ public class Kim {
final int c = string.charAt(i);
if (c <= 0x7F) {
this.length += 1;
} else if (c <= 0x3FFF) {
}
else if (c <= 0x3FFF) {
this.length += 2;
} else {
}
else {
if ((c >= 0xD800) && (c <= 0xDFFF)) {
i += 1;
final int d = string.charAt(i);
@ -155,7 +164,8 @@ public class Kim {
sum += character;
this.hashcode += sum;
at += 1;
} else if (character <= 0x3FFF) {
}
else if (character <= 0x3FFF) {
b = 0x80 | (character >>> 7);
this.bytes[at] = (byte) b;
sum += b;
@ -166,7 +176,8 @@ public class Kim {
sum += b;
this.hashcode += sum;
at += 1;
} else {
}
else {
if ((character >= 0xD800) && (character <= 0xDBFF)) {
i += 1;
character = (((character & 0x3FF) << 10) | (string.charAt(i) & 0x3FF)) + 65536;
@ -196,9 +207,11 @@ public class Kim {
* Returns the number of bytes needed to contain the character in Kim
* format.
*
* @param character a Unicode character between 0 and 0x10FFFF.
* @param character
* a Unicode character between 0 and 0x10FFFF.
* @return 1, 2, or 3
* @throws JSONException if the character is not representable in a kim.
* @throws JSONException
* if the character is not representable in a kim.
*/
public static int characterSize(final int character) throws JSONException {
if ((character < 0) || (character > 0x10FFFF)) {
@ -212,8 +225,10 @@ public class Kim {
* values and ranges from 0 to length - 1. The index of the next character
* is at index + Kim.characterSize(kim.characterAt(index)).
*
* @param at the index of the char value. The first character is at 0.
* @throws JSONException if at does not point to a valid character.
* @param at
* the index of the char value. The first character is at 0.
* @throws JSONException
* if at does not point to a valid character.
* @returns a Unicode character between 0 and 0x10FFFF.
*/
public int characterAt(final int at) throws JSONException {
@ -228,7 +243,8 @@ public class Kim {
if (character > 0x7F) {
return character;
}
} else {
}
else {
final int c2 = get(at + 2);
character = ((c & 0x7F) << 14) | ((c1 & 0x7F) << 7) | c2;
if (((c2 & 0x80) == 0) && (character > 0x3FFF) && (character <= 0x10FFFF) && ((character < 0xD800) || (character > 0xDFFF))) {
@ -241,8 +257,10 @@ public class Kim {
/**
* Copy the contents of this kim to a byte array.
*
* @param bytes A byte array of sufficient size.
* @param at The position within the byte array to take the byes.
* @param bytes
* A byte array of sufficient size.
* @param at
* The position within the byte array to take the byes.
* @return The position immediately after the copy.
*/
public int copy(final byte[] bytes, final int at) {
@ -254,7 +272,8 @@ public class Kim {
* Two kim objects containing exactly the same bytes in the same order are
* equal to each other.
*
* @param obj the other kim with which to compare.
* @param obj
* the other kim with which to compare.
* @returns true if this and obj are both kim objects containing identical
* byte sequences.
*/
@ -276,9 +295,11 @@ public class Kim {
/**
* Get a byte from a kim.
*
* @param at The position of the byte. The first byte is at 0.
* @param at
* The position of the byte. The first byte is at 0.
* @return The byte.
* @throws JSONException if there is no byte at that position.
* @throws JSONException
* if there is no byte at that position.
*/
public int get(final int at) throws JSONException {
if ((at < 0) || (at > this.length)) {
@ -301,7 +322,8 @@ public class Kim {
* it could be less.
*
* @return The string. A kim memoizes its string representation.
* @throws JSONException if the kim is not valid.
* @throws JSONException
* if the kim is not valid.
*/
@Override
public String toString() throws JSONException {
@ -314,7 +336,8 @@ public class Kim {
if (c < 0x10000) {
chars[length] = (char) c;
length += 1;
} else {
}
else {
chars[length] = (char) (0xD800 | ((c - 0x10000) >>> 10));
length += 1;
chars[length] = (char) (0xDC00 | (c & 0x03FF));

View File

@ -36,7 +36,8 @@ public class Property {
* Converts a property file object into a JSONObject. The property file
* object is a table of name value pairs.
*
* @param properties java.util.Properties
* @param properties
* java.util.Properties
* @return JSONObject
* @throws JSONException
*/
@ -55,7 +56,8 @@ public class Property {
/**
* Converts the JSONObject into a property file object.
*
* @param jo JSONObject
* @param jo
* JSONObject
* @return java.util.Properties
* @throws JSONException
*/

View File

@ -59,6 +59,7 @@ public class XML {
/**
* Replace special characters with XML escapes:
* <p/>
*
* <pre>
* &amp; <small>(ampersand)</small> is replaced by &amp;amp;
* &lt; <small>(less than)</small> is replaced by &amp;lt;
@ -66,7 +67,8 @@ public class XML {
* &quot; <small>(double quote)</small> is replaced by &amp;quot;
* </pre>
*
* @param string The string to be escaped.
* @param string
* The string to be escaped.
* @return The escaped string.
*/
public static String escape(final String string) {
@ -100,7 +102,8 @@ public class XML {
* Throw an exception if the string contains whitespace.
* Whitespace is not allowed in tagNames and attributes.
*
* @param string A string.
* @param string
* A string.
* @throws JSONException
*/
public static void noSpace(final String string) throws JSONException {
@ -119,9 +122,12 @@ public class XML {
/**
* Scan the content following the named tag, attaching it to the context.
*
* @param x The XMLTokener containing the source string.
* @param context The JSONObject that will include the new material.
* @param name The tag name.
* @param x
* The XMLTokener containing the source string.
* @param context
* The JSONObject that will include the new material.
* @param name
* The tag name.
* @return true if the close tag is processed.
* @throws JSONException
*/
@ -155,7 +161,8 @@ public class XML {
return false;
}
x.back();
} else if (c == '[') {
}
else if (c == '[') {
token = x.nextToken();
if ("CDATA".equals(token)) {
if (x.next() == '[') {
@ -173,21 +180,25 @@ public class XML {
token = x.nextMeta();
if (token == null) {
throw x.syntaxError("Missing '>' after '<!'.");
} else if (token == LT) {
}
else if (token == LT) {
i += 1;
} else if (token == GT) {
}
else if (token == GT) {
i -= 1;
}
}
while (i > 0);
return false;
} else if (token == QUEST) {
}
else if (token == QUEST) {
// <?
x.skipPast("?>");
return false;
} else if (token == SLASH) {
}
else if (token == SLASH) {
// Close tag </
@ -203,16 +214,18 @@ public class XML {
}
return true;
} else if (token instanceof Character) {
}
else if (token instanceof Character) {
throw x.syntaxError("Misshaped tag");
// Open tag <
} else {
}
else {
tagName = (String) token;
token = null;
jsonobject = new JSONObject();
for (; ; ) {
for (;;) {
if (token == null) {
token = x.nextToken();
}
@ -229,34 +242,39 @@ public class XML {
}
jsonobject.accumulate(string, XML.stringToValue((String) token));
token = null;
} else {
}
else {
jsonobject.accumulate(string, "");
}
// Empty tag <.../>
} else if (token == SLASH) {
}
else if (token == SLASH) {
if (x.nextToken() != GT) {
throw x.syntaxError("Misshaped tag");
}
if (jsonobject.length() > 0) {
context.accumulate(tagName, jsonobject);
} else {
}
else {
context.accumulate(tagName, "");
}
return false;
// Content, between <...> and </...>
} else if (token == GT) {
for (; ; ) {
}
else if (token == GT) {
for (;;) {
token = x.nextContent();
if (token == null) {
if (tagName != null) {
throw x.syntaxError("Unclosed tag " + tagName);
}
return false;
} else if (token instanceof String) {
}
else if (token instanceof String) {
string = (String) token;
if (string.length() > 0) {
jsonobject.accumulate("content", XML.stringToValue(string));
@ -264,20 +282,24 @@ public class XML {
// Nested element
} else if (token == LT) {
}
else if (token == LT) {
if (parse(x, jsonobject, tagName)) {
if (jsonobject.length() == 0) {
context.accumulate(tagName, "");
} else if ((jsonobject.length() == 1) && (jsonobject.opt("content") != null)) {
}
else if ((jsonobject.length() == 1) && (jsonobject.opt("content") != null)) {
context.accumulate(tagName, jsonobject.opt("content"));
} else {
}
else {
context.accumulate(tagName, jsonobject);
}
return false;
}
}
}
} else {
}
else {
throw x.syntaxError("Misshaped tag");
}
}
@ -291,7 +313,8 @@ public class XML {
* convert plus forms, octal forms, hex forms, or E forms lacking decimal
* points.
*
* @param string A String.
* @param string
* A String.
* @return A simple JSON value.
*/
public static Object stringToValue(final String string) {
@ -317,13 +340,15 @@ public class XML {
return value;
}
}
} catch (final Exception ignore) {
}
catch (final Exception ignore) {
try {
final Double value = new Double(string);
if (value.toString().equals(string)) {
return value;
}
} catch (final Exception ignoreAlso) {
}
catch (final Exception ignoreAlso) {
}
}
return string;
@ -340,7 +365,8 @@ public class XML {
* text may be placed in a "content" member. Comments, prologs, DTDs, and
* <code>&lt;[ [ ]]></code> are ignored.
*
* @param string The source string.
* @param string
* The source string.
* @return A JSONObject containing the structured data from the XML string.
* @throws JSONException
*/
@ -356,7 +382,8 @@ public class XML {
/**
* Convert a JSONObject into a well-formed, element-normal XML string.
*
* @param object A JSONObject.
* @param object
* A JSONObject.
* @return A string.
* @throws JSONException
*/
@ -367,8 +394,10 @@ public class XML {
/**
* Convert a JSONObject into a well-formed, element-normal XML string.
*
* @param object A JSONObject.
* @param tagName The optional name of the enclosing tag.
* @param object
* A JSONObject.
* @param tagName
* The optional name of the enclosing tag.
* @return A string.
* @throws JSONException
*/
@ -416,13 +445,15 @@ public class XML {
}
sb.append(escape(ja.get(i).toString()));
}
} else {
}
else {
sb.append(escape(value.toString()));
}
// Emit an array of similar keys
} else if (value instanceof JSONArray) {
}
else if (value instanceof JSONArray) {
ja = (JSONArray) value;
length = ja.length();
for (i = 0; i < length; i += 1) {
@ -435,18 +466,21 @@ public class XML {
sb.append("</");
sb.append(key);
sb.append('>');
} else {
}
else {
sb.append(toString(value, key));
}
}
} else if ("".equals(value)) {
}
else if ("".equals(value)) {
sb.append('<');
sb.append(key);
sb.append("/>");
// Emit a new tag <k>
} else {
}
else {
sb.append(toString(value, key));
}
}
@ -464,7 +498,8 @@ public class XML {
// a place
// where XML is lacking, synthesize an <array> element.
} else {
}
else {
if (object.getClass().isArray()) {
object = new JSONArray(object);
}
@ -475,7 +510,8 @@ public class XML {
sb.append(toString(ja.opt(i), tagName == null ? "array" : tagName));
}
return sb.toString();
} else {
}
else {
string = (object == null) ? "null" : escape(object.toString());
return (tagName == null) ? "\"" + string + "\"" : (string.length() == 0) ? "<" + tagName + "/>" : "<" + tagName + ">" + string + "</" + tagName + ">";
}

View File

@ -27,7 +27,8 @@ public class XMLTokener extends JSONTokener {
/**
* Construct an XMLTokener from a string.
*
* @param s A source string.
* @param s
* A source string.
*/
public XMLTokener(final String s) {
super(s);
@ -37,13 +38,14 @@ public class XMLTokener extends JSONTokener {
* Get the text in the CDATA block.
*
* @return The string up to the <code>]]&gt;</code>.
* @throws JSONException If the <code>]]&gt;</code> is not found.
* @throws JSONException
* If the <code>]]&gt;</code> is not found.
*/
public String nextCDATA() throws JSONException {
char c;
int i;
final StringBuilder sb = new StringBuilder();
for (; ; ) {
for (;;) {
c = next();
if (end()) {
throw syntaxError("Unclosed CDATA");
@ -80,14 +82,15 @@ public class XMLTokener extends JSONTokener {
return XML.LT;
}
sb = new StringBuilder();
for (; ; ) {
for (;;) {
if ((c == '<') || (c == 0)) {
back();
return sb.toString().trim();
}
if (c == '&') {
sb.append(nextEntity(c));
} else {
}
else {
sb.append(c);
}
c = next();
@ -98,19 +101,23 @@ public class XMLTokener extends JSONTokener {
* Return the next entity. These entities are translated to Characters:
* <code>&amp; &apos; &gt; &lt; &quot;</code>.
*
* @param ampersand An ampersand character.
* @param ampersand
* An ampersand character.
* @return A Character or an entity String if the entity is not recognized.
* @throws JSONException If missing ';' in XML entity.
* @throws JSONException
* If missing ';' in XML entity.
*/
public Object nextEntity(final char ampersand) throws JSONException {
final StringBuilder sb = new StringBuilder();
for (; ; ) {
for (;;) {
final char c = next();
if (Character.isLetterOrDigit(c) || (c == '#')) {
sb.append(Character.toLowerCase(c));
} else if (c == ';') {
}
else if (c == ';') {
break;
} else {
}
else {
throw syntaxError("Missing ';' in XML entity: &" + sb);
}
}
@ -127,7 +134,8 @@ public class XMLTokener extends JSONTokener {
* Character, and strings and names are returned as Boolean. We
* don't care
* what the values actually are.
* @throws JSONException If a string is not properly closed or if the XML
* @throws JSONException
* If a string is not properly closed or if the XML
* is badly structured.
*/
public Object nextMeta() throws JSONException {
@ -155,7 +163,7 @@ public class XMLTokener extends JSONTokener {
case '"':
case '\'':
q = c;
for (; ; ) {
for (;;) {
c = next();
if (c == 0) {
throw syntaxError("Unterminated string");
@ -165,7 +173,7 @@ public class XMLTokener extends JSONTokener {
}
}
default:
for (; ; ) {
for (;;) {
c = next();
if (Character.isWhitespace(c)) {
return Boolean.TRUE;
@ -194,7 +202,8 @@ public class XMLTokener extends JSONTokener {
* name.
*
* @return a String or a Character.
* @throws JSONException If the XML is not well formed.
* @throws JSONException
* If the XML is not well formed.
*/
public Object nextToken() throws JSONException {
char c;
@ -226,7 +235,7 @@ public class XMLTokener extends JSONTokener {
case '\'':
q = c;
sb = new StringBuilder();
for (; ; ) {
for (;;) {
c = next();
if (c == 0) {
throw syntaxError("Unterminated string");
@ -236,7 +245,8 @@ public class XMLTokener extends JSONTokener {
}
if (c == '&') {
sb.append(nextEntity(c));
} else {
}
else {
sb.append(c);
}
}
@ -245,7 +255,7 @@ public class XMLTokener extends JSONTokener {
// Name
sb = new StringBuilder();
for (; ; ) {
for (;;) {
sb.append(c);
c = next();
if (Character.isWhitespace(c)) {
@ -277,7 +287,8 @@ public class XMLTokener extends JSONTokener {
* If it is not found, we are left at the end of the source with a result of
* false.
*
* @param to A string to skip past.
* @param to
* A string to skip past.
* @throws JSONException
*/
public boolean skipPast(final String to) throws JSONException {
@ -304,7 +315,7 @@ public class XMLTokener extends JSONTokener {
/* We will loop, possibly for all of the remaining characters. */
for (; ; ) {
for (;;) {
j = offset;
b = true;

View File

@ -21,42 +21,6 @@
package com.intellectualcrafters.plot;
import com.intellectualcrafters.plot.commands.Auto;
import com.intellectualcrafters.plot.commands.MainCommand;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.config.ConfigurationNode;
import com.intellectualcrafters.plot.config.Settings;
import com.intellectualcrafters.plot.database.*;
import com.intellectualcrafters.plot.events.PlayerTeleportToPlotEvent;
import com.intellectualcrafters.plot.events.PlotDeleteEvent;
import com.intellectualcrafters.plot.flag.AbstractFlag;
import com.intellectualcrafters.plot.flag.FlagManager;
import com.intellectualcrafters.plot.generator.DefaultPlotManager;
import com.intellectualcrafters.plot.generator.DefaultPlotWorld;
import com.intellectualcrafters.plot.generator.WorldGenerator;
import com.intellectualcrafters.plot.listeners.*;
import com.intellectualcrafters.plot.object.*;
import com.intellectualcrafters.plot.util.*;
import com.intellectualcrafters.plot.util.Logger.LogLevel;
import com.intellectualcrafters.plot.uuid.OfflineUUIDWrapper;
import com.intellectualcrafters.plot.uuid.PlotUUIDSaver;
import com.intellectualcrafters.plot.uuid.UUIDSaver;
import com.sk89q.worldedit.bukkit.WorldEditPlugin;
import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
import me.confuser.barapi.BarAPI;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.*;
import org.bukkit.command.PluginCommand;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.generator.ChunkGenerator;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.RegisteredServiceProvider;
import org.bukkit.plugin.java.JavaPlugin;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
@ -64,10 +28,85 @@ import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
import me.confuser.barapi.BarAPI;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Chunk;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.OfflinePlayer;
import org.bukkit.World;
import org.bukkit.command.PluginCommand;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.generator.ChunkGenerator;
import org.bukkit.plugin.RegisteredServiceProvider;
import org.bukkit.plugin.java.JavaPlugin;
import com.intellectualcrafters.plot.commands.Auto;
import com.intellectualcrafters.plot.commands.MainCommand;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.config.ConfigurationNode;
import com.intellectualcrafters.plot.config.Settings;
import com.intellectualcrafters.plot.database.DBFunc;
import com.intellectualcrafters.plot.database.MySQL;
import com.intellectualcrafters.plot.database.PlotMeConverter;
import com.intellectualcrafters.plot.database.SQLManager;
import com.intellectualcrafters.plot.database.SQLite;
import com.intellectualcrafters.plot.events.PlayerTeleportToPlotEvent;
import com.intellectualcrafters.plot.events.PlotDeleteEvent;
import com.intellectualcrafters.plot.flag.AbstractFlag;
import com.intellectualcrafters.plot.flag.FlagManager;
import com.intellectualcrafters.plot.generator.DefaultPlotManager;
import com.intellectualcrafters.plot.generator.DefaultPlotWorld;
import com.intellectualcrafters.plot.generator.WorldGenerator;
import com.intellectualcrafters.plot.listeners.EntityListener;
import com.intellectualcrafters.plot.listeners.ForceFieldListener;
import com.intellectualcrafters.plot.listeners.InventoryListener;
import com.intellectualcrafters.plot.listeners.PlayerEvents;
import com.intellectualcrafters.plot.listeners.PlotListener;
import com.intellectualcrafters.plot.listeners.PlotPlusListener;
import com.intellectualcrafters.plot.listeners.WorldEditListener;
import com.intellectualcrafters.plot.listeners.WorldGuardListener;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotGenerator;
import com.intellectualcrafters.plot.object.PlotId;
import com.intellectualcrafters.plot.object.PlotManager;
import com.intellectualcrafters.plot.object.PlotWorld;
import com.intellectualcrafters.plot.util.ConsoleColors;
import com.intellectualcrafters.plot.util.Lag;
import com.intellectualcrafters.plot.util.Logger;
import com.intellectualcrafters.plot.util.Logger.LogLevel;
import com.intellectualcrafters.plot.util.Metrics;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.SendChunk;
import com.intellectualcrafters.plot.util.SetBlockFast;
import com.intellectualcrafters.plot.util.UUIDHandler;
import com.intellectualcrafters.plot.uuid.OfflineUUIDWrapper;
import com.intellectualcrafters.plot.uuid.PlotUUIDSaver;
import com.intellectualcrafters.plot.uuid.UUIDSaver;
import com.sk89q.worldedit.bukkit.WorldEditPlugin;
import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
/**
* PlotMain class.
*
@ -80,18 +119,15 @@ public class PlotMain extends JavaPlugin {
/**
* Permission that allows for "everything"
*/
public static final String ADMIN_PERMISSION =
"plots.admin";
public static final String ADMIN_PERMISSION = "plots.admin";
/**
* Storage version
*/
public final static int storage_ver =
1;
public final static int storage_ver = 1;
/**
* Boolean Flags (material)
*/
public final static HashMap<Material, String> booleanFlags =
new HashMap<>();
public final static HashMap<Material, String> booleanFlags = new HashMap<>();
/**
* Initialize the material flags
@ -114,13 +150,11 @@ public class PlotMain extends JavaPlugin {
/**
* All loaded plot worlds
*/
private final static HashMap<String, PlotWorld> worlds =
new HashMap<>();
private final static HashMap<String, PlotWorld> worlds = new HashMap<>();
/**
* All world managers
*/
private final static HashMap<String, PlotManager> managers =
new HashMap<>();
private final static HashMap<String, PlotManager> managers = new HashMap<>();
/**
* settings.properties
*/
@ -144,33 +178,27 @@ public class PlotMain extends JavaPlugin {
/**
* WorldEdit object
*/
public static WorldEditPlugin worldEdit =
null;
public static WorldEditPlugin worldEdit = null;
/**
* BarAPI object
*/
public static BarAPI barAPI =
null;
public static BarAPI barAPI = null;
/**
* World Guard Object
*/
public static WorldGuardPlugin worldGuard =
null;
public static WorldGuardPlugin worldGuard = null;
/**
* World Guard Listener
*/
public static WorldGuardListener worldGuardListener =
null;
public static WorldGuardListener worldGuardListener = null;
/**
* Economy Object (vault)
*/
public static Economy
economy;
public static Economy economy;
/**
* Use Economy?
*/
public static boolean useEconomy =
false;
public static boolean useEconomy = false;
/**
* The UUID Saver
*/
@ -202,7 +230,8 @@ public class PlotMain extends JavaPlugin {
public void run() {
try {
checkExpired(plugin, true);
} catch (Exception e) {
}
catch (final Exception e) {
e.printStackTrace();
}
}
@ -213,9 +242,12 @@ public class PlotMain extends JavaPlugin {
* Check a range of permissions e.g. 'plots.plot.<0-100>'<br>
* Returns highest integer in range.
*
* @param player to check
* @param stub to check
* @param range tp check
* @param player
* to check
* @param stub
* to check
* @param range
* tp check
* @return permitted range
*/
public static int hasPermissionRange(final Player player, final String stub, final int range) {
@ -238,8 +270,10 @@ public class PlotMain extends JavaPlugin {
* - Op has all permissions <br>
* - checks for '*' nodes
*
* @param player to check
* @param perms to check
* @param player
* to check
* @param perms
* to check
* @return true of player has permissions
*/
public static boolean hasPermissions(final Player player, final String[] perms) {
@ -249,8 +283,9 @@ public class PlotMain extends JavaPlugin {
}
for (final String perm : perms) {
boolean permitted = false;
if (player.hasPermission(perm))
if (player.hasPermission(perm)) {
permitted = true;
}
else {
final String[] nodes = perm.split("\\.");
final StringBuilder n = new StringBuilder();
@ -283,7 +318,8 @@ public class PlotMain extends JavaPlugin {
/**
* Set the uuid saver
*
* @param saver new saver
* @param saver
* new saver
* @see com.intellectualcrafters.plot.uuid.UUIDSaver
*/
public static void setUUIDSaver(final UUIDSaver saver) {
@ -295,8 +331,10 @@ public class PlotMain extends JavaPlugin {
* - Op has all permissions <br>
* - checks for '*' nodes
*
* @param player to check
* @param perm to check
* @param player
* to check
* @param perm
* to check
* @return true if player has the permission
*/
public static boolean hasPermission(final Player player, final String perm) {
@ -345,7 +383,8 @@ public class PlotMain extends JavaPlugin {
}
/**
* @param player player
* @param player
* player
* @return Set Containing the players plots
*/
public static Set<Plot> getPlots(final Player player) {
@ -364,8 +403,10 @@ public class PlotMain extends JavaPlugin {
}
/**
* @param world plot world
* @param player plot owner
* @param world
* plot world
* @param player
* plot owner
* @return players plots
*/
public static Set<Plot> getPlots(final World world, final Player player) {
@ -384,7 +425,8 @@ public class PlotMain extends JavaPlugin {
/**
* Get plots for the specified world
*
* @param world A world, in which you want to search for plots
* @param world
* A world, in which you want to search for plots
* @return HashMap containing Plot IDs and Plot Objects
*/
public static HashMap<PlotId, Plot> getPlots(final String world) {
@ -395,7 +437,8 @@ public class PlotMain extends JavaPlugin {
}
/**
* @param world plot world
* @param world
* plot world
* @return plots in world
*/
public static HashMap<PlotId, Plot> getPlots(final World world) {
@ -409,7 +452,7 @@ public class PlotMain extends JavaPlugin {
* get all plot worlds
*/
public static String[] getPlotWorlds() {
Set<String> strings = worlds.keySet();
final Set<String> strings = worlds.keySet();
return (strings.toArray(new String[strings.size()]));
}
@ -417,12 +460,13 @@ public class PlotMain extends JavaPlugin {
* @return plots worlds
*/
public static String[] getPlotWorldsString() {
Set<String> strings = plots.keySet();
final Set<String> strings = plots.keySet();
return strings.toArray(new String[strings.size()]);
}
/**
* @param world plotworld(?)
* @param world
* plotworld(?)
* @return true if the world is a plotworld
*/
public static boolean isPlotWorld(final World world) {
@ -430,7 +474,8 @@ public class PlotMain extends JavaPlugin {
}
/**
* @param world plotworld(?)
* @param world
* plotworld(?)
* @return true if the world is a plotworld
*/
public static boolean isPlotWorld(final String world) {
@ -438,7 +483,8 @@ public class PlotMain extends JavaPlugin {
}
/**
* @param world World to get manager for
* @param world
* World to get manager for
* @return manager for world
*/
public static PlotManager getPlotManager(final World world) {
@ -449,7 +495,8 @@ public class PlotMain extends JavaPlugin {
}
/**
* @param world world
* @param world
* world
* @return PlotManager
*/
public static PlotManager getPlotManager(final String world) {
@ -460,7 +507,8 @@ public class PlotMain extends JavaPlugin {
}
/**
* @param world to search
* @param world
* to search
* @return PlotWorld object
*/
public static PlotWorld getWorldSettings(final World world) {
@ -471,7 +519,8 @@ public class PlotMain extends JavaPlugin {
}
/**
* @param world to search
* @param world
* to search
* @return PlotWorld object
*/
public static PlotWorld getWorldSettings(final String world) {
@ -482,20 +531,24 @@ public class PlotMain extends JavaPlugin {
}
/**
* @param world world to search
* @param world
* world to search
* @return set containing the plots for a world
*/
public static Plot[] getWorldPlots(final World world) {
Collection<Plot> values = plots.get(world.getName()).values();
final Collection<Plot> values = plots.get(world.getName()).values();
return (values.toArray(new Plot[values.size()]));
}
/**
* Remove a plot
*
* @param world The Plot World
* @param id The Plot ID
* @param callEvent Whether or not to call the PlotDeleteEvent
* @param world
* The Plot World
* @param id
* The Plot ID
* @param callEvent
* Whether or not to call the PlotDeleteEvent
* @return true if successful, false if not
*/
public static boolean removePlot(final String world, final PlotId id, final boolean callEvent) {
@ -514,7 +567,8 @@ public class PlotMain extends JavaPlugin {
/**
* Replace the plot object with an updated version
*
* @param plot plot object
* @param plot
* plot object
*/
public static void updatePlot(final Plot plot) {
final String world = plot.world;
@ -546,8 +600,10 @@ public class PlotMain extends JavaPlugin {
* - Add new plots to the end.<br>
* - The task then only needs to go through the first few plots
*
* @param plugin Plugin
* @param async Call async?
* @param plugin
* Plugin
* @param async
* Call async?
*/
private static void checkExpired(final JavaPlugin plugin, final boolean async) {
if (async) {
@ -573,7 +629,8 @@ public class PlotMain extends JavaPlugin {
Bukkit.getServer().getPluginManager().callEvent(event);
if (event.isCancelled()) {
event.setCancelled(true);
} else {
}
else {
toDeletePlot.add(plot);
}
}
@ -592,7 +649,8 @@ public class PlotMain extends JavaPlugin {
}
}
});
} else {
}
else {
for (final String world : getPlotWorldsString()) {
if (PlotMain.plots.containsKey(world)) {
for (final Plot plot : PlotMain.plots.get(world).values()) {
@ -601,7 +659,8 @@ public class PlotMain extends JavaPlugin {
Bukkit.getServer().getPluginManager().callEvent(event);
if (event.isCancelled()) {
event.setCancelled(true);
} else {
}
else {
DBFunc.delete(world, plot);
}
}
@ -632,12 +691,14 @@ public class PlotMain extends JavaPlugin {
/**
* Send a message to the console.
*
* @param string message
* @param string
* message
*/
public static void sendConsoleSenderMessage(final String string) {
if (getMain().getServer().getConsoleSender() == null) {
System.out.println(ChatColor.stripColor(ConsoleColors.fromString(string)));
} else {
}
else {
getMain().getServer().getConsoleSender().sendMessage(ChatColor.translateAlternateColorCodes('&', string));
}
}
@ -645,9 +706,12 @@ public class PlotMain extends JavaPlugin {
/**
* Teleport a player to a plot
*
* @param player Player to teleport
* @param from Previous Location
* @param plot Plot to teleport to
* @param player
* Player to teleport
* @param from
* Previous Location
* @param plot
* Plot to teleport to
* @return true if successful
*/
public static boolean teleportPlayer(final Player player, final Location from, final Plot plot) {
@ -668,7 +732,8 @@ public class PlotMain extends JavaPlugin {
/**
* Send a message to the console
*
* @param c message
* @param c
* message
*/
@SuppressWarnings("unused")
public static void sendConsoleSenderMessage(final C c) {
@ -678,7 +743,8 @@ public class PlotMain extends JavaPlugin {
/**
* Broadcast publicly
*
* @param c message
* @param c
* message
*/
public static void Broadcast(final C c) {
Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', C.PREFIX.s() + c.s()));
@ -696,7 +762,8 @@ public class PlotMain extends JavaPlugin {
/**
* Broadcast a message to all admins
*
* @param c message
* @param c
* message
*/
public static void BroadcastWithPerms(final C c) {
for (final Player player : Bukkit.getOnlinePlayers()) {
@ -719,7 +786,8 @@ public class PlotMain extends JavaPlugin {
/**
* Ge the last played time
*
* @param uuid UUID for the player
* @param uuid
* UUID for the player
* @return last play time as a long
*/
public static long getLastPlayed(final UUID uuid) {
@ -751,7 +819,8 @@ public class PlotMain extends JavaPlugin {
}
config = YamlConfiguration.loadConfiguration(configFile);
setupConfig();
} catch (final Exception err_trans) {
}
catch (final Exception err_trans) {
Logger.add(LogLevel.DANGER, "Failed to save settings.yml");
System.out.println("Failed to save settings.yml");
}
@ -764,14 +833,16 @@ public class PlotMain extends JavaPlugin {
}
storage = YamlConfiguration.loadConfiguration(storageFile);
setupStorage();
} catch (final Exception err_trans) {
}
catch (final Exception err_trans) {
Logger.add(LogLevel.DANGER, "Failed to save storage.yml");
System.out.println("Failed to save storage.yml");
}
try {
config.save(configFile);
storage.save(storageFile);
} catch (final IOException e) {
}
catch (final IOException e) {
Logger.add(LogLevel.DANGER, "Configuration file saving failed");
e.printStackTrace();
}
@ -906,9 +977,11 @@ public class PlotMain extends JavaPlugin {
// }
}
}
} catch (final Throwable e) {
}
catch (final Throwable e) {
++this.error;
} finally {
}
finally {
++this.ticked;
}
}
@ -943,7 +1016,7 @@ public class PlotMain extends JavaPlugin {
options.put("teleport.on_login", Settings.TELEPORT_ON_LOGIN);
options.put("perm-based-mob-cap.enabled", Settings.MOB_CAP_ENABLED);
options.put("perm-based-mob-cap.max", Settings.MOB_CAP);
options.put("worldedit.require-selection-in-mask",Settings.REQUIRE_SELECTION);
options.put("worldedit.require-selection-in-mask", Settings.REQUIRE_SELECTION);
for (final Entry<String, Object> node : options.entrySet()) {
if (!config.contains(node.getKey())) {
@ -976,7 +1049,8 @@ public class PlotMain extends JavaPlugin {
/**
* Create a plotworld config section
*
* @param plotworld World to create the section for
* @param plotworld
* World to create the section for
*/
@SuppressWarnings("unused")
public static void createConfiguration(final PlotWorld plotworld) {
@ -994,7 +1068,8 @@ public class PlotMain extends JavaPlugin {
try {
config.save(PlotMain.configFile);
} catch (final IOException e) {
}
catch (final IOException e) {
PlotMain.sendConsoleSenderMessage("&c[Warning] PlotSquared failed to save the configuration&7 (settings.yml may differ from the one in memory)\n - To force a save from console use /plots save");
}
}
@ -1004,9 +1079,7 @@ public class PlotMain extends JavaPlugin {
return;
}
Set<String> worlds = (config.contains("worlds") ?
config.getConfigurationSection("worlds").getKeys(false) :
new HashSet<String>());
final Set<String> worlds = (config.contains("worlds") ? config.getConfigurationSection("worlds").getKeys(false) : new HashSet<String>());
// Let's create these here instead
final PlotWorld plotWorld;
@ -1015,12 +1088,9 @@ public class PlotMain extends JavaPlugin {
final String path = "worlds." + world;
if ((generator != null) && (generator instanceof PlotGenerator)) {
plotGenerator =
(PlotGenerator) generator;
plotWorld =
plotGenerator.getNewPlotWorld(world);
plotManager =
plotGenerator.getPlotManager();
plotGenerator = (PlotGenerator) generator;
plotWorld = plotGenerator.getNewPlotWorld(world);
plotManager = plotGenerator.getPlotManager();
sendConsoleSenderMessage(C.PREFIX.s() + "&aDetected world load for '" + world + "'");
sendConsoleSenderMessage(C.PREFIX.s() + "&3 - generator: &7" + plotGenerator.getClass().getName());
sendConsoleSenderMessage(C.PREFIX.s() + "&3 - plotworld: &7" + plotWorld.getClass().getName());
@ -1035,20 +1105,20 @@ public class PlotMain extends JavaPlugin {
try {
config.save(configFile);
} catch (final IOException e) {
}
catch (final IOException e) {
e.printStackTrace();
}
//Now add it
// Now add it
addPlotWorld(world, plotWorld, plotManager);
} else {
}
else {
if (worlds.contains(world)) {
sendConsoleSenderMessage("&cWorld '" + world + "' in settings.yml is not using PlotSquared generator!");
plotWorld =
new DefaultPlotWorld(world);
plotManager =
new DefaultPlotManager();
plotWorld = new DefaultPlotWorld(world);
plotManager = new DefaultPlotManager();
if (!config.contains(path)) {
config.createSection(path);
@ -1059,7 +1129,8 @@ public class PlotMain extends JavaPlugin {
try {
config.save(configFile);
} catch (final IOException e) {
}
catch (final IOException e) {
e.printStackTrace();
}
@ -1075,7 +1146,8 @@ public class PlotMain extends JavaPlugin {
* use this method unless the required world is preconfigured in the
* settings.yml
*
* @param world to load
* @param world
* to load
*/
public static void loadWorld(final World world) {
if (world == null) {
@ -1135,14 +1207,17 @@ public class PlotMain extends JavaPlugin {
seconds = 1;
try {
amount = Integer.parseInt(values[0]);
} catch (final Exception e) {
}
catch (final Exception e) {
return null;
}
} else {
}
else {
try {
amount = Integer.parseInt(values[0]);
seconds = Integer.parseInt(values[1]);
} catch (final Exception e) {
}
catch (final Exception e) {
return null;
}
}
@ -1269,7 +1344,8 @@ public class PlotMain extends JavaPlugin {
public String parseValue(final String value) {
try {
return Long.parseLong(value) + "";
} catch (final Exception e) {
}
catch (final Exception e) {
return null;
}
}
@ -1307,9 +1383,12 @@ public class PlotMain extends JavaPlugin {
/**
* Add a Plot world
*
* @param world World to add
* @param plotworld PlotWorld Object
* @param manager Plot Manager for the new world
* @param world
* World to add
* @param plotworld
* PlotWorld Object
* @param manager
* Plot Manager for the new world
*/
public static void addPlotWorld(final String world, final PlotWorld plotworld, final PlotManager manager) {
worlds.put(world, plotworld);
@ -1322,7 +1401,8 @@ public class PlotMain extends JavaPlugin {
/**
* Remove a plot world
*
* @param world World to remove
* @param world
* World to remove
*/
public static void removePlotWorld(final String world) {
plots.remove(world);
@ -1342,7 +1422,8 @@ public class PlotMain extends JavaPlugin {
/**
* Set all plots
*
* @param plots New Plot LinkedHashMap
* @param plots
* New Plot LinkedHashMap
*/
public static void setAllPlotsRaw(final LinkedHashMap<String, HashMap<PlotId, Plot>> plots) {
PlotMain.plots = plots;
@ -1351,7 +1432,8 @@ public class PlotMain extends JavaPlugin {
/**
* Set all plots
*
* @param plots New Plot HashMap
* @param plots
* New Plot HashMap
*/
public static void setAllPlotsRaw(final HashMap<String, HashMap<PlotId, Plot>> plots) {
PlotMain.plots = new LinkedHashMap<>(plots);
@ -1383,7 +1465,8 @@ public class PlotMain extends JavaPlugin {
writer.write("Created at: " + new Date().toString() + "\n\n\n");
writer.close();
}
} catch (final IOException e) {
}
catch (final IOException e) {
e.printStackTrace();
}
@ -1410,7 +1493,8 @@ public class PlotMain extends JavaPlugin {
sendConsoleSenderMessage(C.PREFIX.s() + "&cURL: &6https://java.com/en/download/index.jsp");
Bukkit.getPluginManager().disablePlugin(this);
return;
} else if (getJavaVersion() < 1.8) {
}
else if (getJavaVersion() < 1.8) {
sendConsoleSenderMessage(C.PREFIX.s() + "&cIt's really recommended to run Java 1.8, as it increases performance");
}
// Setup configuration
@ -1421,10 +1505,12 @@ public class PlotMain extends JavaPlugin {
final Metrics metrics = new Metrics(this);
metrics.start();
sendConsoleSenderMessage(C.PREFIX.s() + "&6Metrics enabled.");
} catch (final Exception e) {
}
catch (final Exception e) {
sendConsoleSenderMessage(C.PREFIX.s() + "&cFailed to load up metrics.");
}
} else {
}
else {
// We should at least make them feel bad.
sendConsoleSenderMessage("Using metrics will allow us to improve the plugin\nPlease consider it :)");
}
@ -1437,9 +1523,7 @@ public class PlotMain extends JavaPlugin {
}
// Add tables to this one, if we create more :D
final String[] tables = new String[]{
"plot_trusted", "plot_ratings", "plot_comments"
};
final String[] tables = new String[] { "plot_trusted", "plot_ratings", "plot_comments" };
// Use mysql?
if (Settings.DB.USE_MYSQL) {
@ -1454,8 +1538,9 @@ public class PlotMain extends JavaPlugin {
ResultSet res = meta.getTables(null, null, Settings.DB.PREFIX + "plot", null);
if (!res.next()) {
DBFunc.createTables("mysql", true);
} else {
for (String table : tables) {
}
else {
for (final String table : tables) {
res = meta.getTables(null, null, Settings.DB.PREFIX + table, null);
if (!res.next()) {
DBFunc.createTables("mysql", false);
@ -1464,7 +1549,8 @@ public class PlotMain extends JavaPlugin {
// We should not repeat our self :P
}
}
} catch (final Exception e) {
}
catch (final Exception e) {
Logger.add(LogLevel.DANGER, "MySQL connection failed.");
sendConsoleSenderMessage("&c[Plots] MySQL is not setup correctly. The plugin will disable itself.");
if ((config == null) || config.getBoolean("debug")) {
@ -1482,7 +1568,8 @@ public class PlotMain extends JavaPlugin {
else if (Settings.DB.USE_MONGO) {
// DBFunc.dbManager = new MongoManager();
sendConsoleSenderMessage(C.PREFIX.s() + "MongoDB is not yet implemented");
} else if (Settings.DB.USE_SQLITE) {
}
else if (Settings.DB.USE_SQLITE) {
try {
connection = new SQLite(this, Settings.DB.SQLITE_DB + ".db").openConnection();
{
@ -1491,8 +1578,9 @@ public class PlotMain extends JavaPlugin {
ResultSet res = meta.getTables(null, null, Settings.DB.PREFIX + "plot", null);
if (!res.next()) {
DBFunc.createTables("sqlite", true);
} else {
for (String table : tables) {
}
else {
for (final String table : tables) {
res = meta.getTables(null, null, Settings.DB.PREFIX + table, null);
if (!res.next()) {
DBFunc.createTables("sqlite", false);
@ -1500,7 +1588,8 @@ public class PlotMain extends JavaPlugin {
}
}
}
} catch (final Exception e) {
}
catch (final Exception e) {
Logger.add(LogLevel.DANGER, "SQLite connection failed");
sendConsoleSenderMessage(C.PREFIX.s() + "&cFailed to open SQLite connection. The plugin will disable itself.");
sendConsoleSenderMessage("&9==== Here is an ugly stacktrace, if you are interested in those things ===");
@ -1509,7 +1598,8 @@ public class PlotMain extends JavaPlugin {
return;
}
plots = DBFunc.getPlots();
} else {
}
else {
Logger.add(LogLevel.DANGER, "No storage type is set.");
sendConsoleSenderMessage(C.PREFIX + "&cNo storage type is set!");
getServer().getPluginManager().disablePlugin(this);
@ -1522,7 +1612,8 @@ public class PlotMain extends JavaPlugin {
if (getServer().getPluginManager().getPlugin("PlotMe") != null) {
try {
new PlotMeConverter(this).runAsync();
} catch (final Exception e) {
}
catch (final Exception e) {
e.printStackTrace();
}
}
@ -1531,9 +1622,7 @@ public class PlotMain extends JavaPlugin {
final MainCommand command = new MainCommand();
final PluginCommand plotCommand = getCommand("plots");
plotCommand.setExecutor(command);
plotCommand.setAliases(
Arrays.asList("p", "ps", "plotme", "plot")
);
plotCommand.setAliases(Arrays.asList("p", "ps", "plotme", "plot"));
plotCommand.setTabCompleter(command);
}
if (Settings.MOB_CAP_ENABLED) {
@ -1564,7 +1653,8 @@ public class PlotMain extends JavaPlugin {
PlotMain.sendConsoleSenderMessage("&cThis version of WorldEdit does not support PlotSquared.");
PlotMain.sendConsoleSenderMessage("&cPlease use WorldEdit 6+");
PlotMain.sendConsoleSenderMessage("&c - http://builds.enginehub.org/job/worldedit");
} else {
}
else {
getServer().getPluginManager().registerEvents(new WorldEditListener(), this);
}
}
@ -1598,14 +1688,16 @@ public class PlotMain extends JavaPlugin {
try {
new SetBlockFast();
PlotHelper.canSetFast = true;
} catch (final Throwable e) {
}
catch (final Throwable e) {
PlotHelper.canSetFast = false;
}
try {
new SendChunk();
PlotHelper.canSendChunk = true;
} catch (final Throwable e) {
}
catch (final Throwable e) {
PlotHelper.canSendChunk = false;
}
}
@ -1635,7 +1727,8 @@ public class PlotMain extends JavaPlugin {
final public void onDisable() {
try {
C.saveTranslations();
} catch (Exception e) {
}
catch (final Exception e) {
sendConsoleSenderMessage("Failed to save translations");
Logger.add(LogLevel.DANGER, "Failed to save translations");
e.printStackTrace();
@ -1643,13 +1736,15 @@ public class PlotMain extends JavaPlugin {
Logger.add(LogLevel.GENERAL, "Logger disabled");
try {
Logger.write();
} catch (final IOException e1) {
}
catch (final IOException e1) {
e1.printStackTrace();
}
try {
connection.close();
mySQL.closeConnection();
} catch (NullPointerException | SQLException e) {
}
catch (NullPointerException | SQLException e) {
if (connection != null) {
Logger.add(LogLevel.DANGER, "Could not close mysql connection");
}

View File

@ -21,6 +21,16 @@
package com.intellectualcrafters.plot.api;
import java.util.ArrayList;
import java.util.Set;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.commands.MainCommand;
import com.intellectualcrafters.plot.commands.SubCommand;
@ -38,16 +48,6 @@ import com.intellectualcrafters.plot.util.SchematicHandler;
import com.intellectualcrafters.plot.util.UUIDHandler;
import com.sun.istack.internal.NotNull;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
import java.util.ArrayList;
import java.util.Set;
/**
* PlotSquared API
*
@ -80,6 +80,7 @@ public class PlotAPI {
* Player Functions
*
* General functions involving players, and plot worlds
*
* @see com.intellectualcrafters.plot.util.PlayerFunctions
*/
private static PlayerFunctions playerFunctions;
@ -88,6 +89,7 @@ public class PlotAPI {
* Flag Manager
*
* The manager which handles all flags
*
* @see com.intellectualcrafters.plot.flag.FlagManager
*/
private static FlagManager flagManager;
@ -96,6 +98,7 @@ public class PlotAPI {
* Schematic Handler
*
* The handler which is used to create, and paste, schematics
*
* @see com.intellectualcrafters.plot.util.SchematicHandler
*/
private static SchematicHandler schematicHandler;
@ -111,6 +114,7 @@ public class PlotAPI {
* PlotMain instance
*
* This is the instance that allows for most methods to be used.
*
* @see com.intellectualcrafters.plot.PlotMain
*/
private final PlotMain plotMain;
@ -119,13 +123,15 @@ public class PlotAPI {
* Constructor. Insert any Plugin.
* (Optimally the plugin that is accessing the method)
*
* @param plugin Plugin used to access this method
* @throws com.intellectualcrafters.plot.util.PlotSquaredException if the program fails to fetch the PlotMain instance
* @param plugin
* Plugin used to access this method
* @throws com.intellectualcrafters.plot.util.PlotSquaredException
* if the program fails to fetch the PlotMain instance
* @see com.intellectualcrafters.plot.PlotMain
*/
public PlotAPI(@NotNull final JavaPlugin plugin) {
this.plotMain = PlotMain.getMain();
if (plotMain == null) {
if (this.plotMain == null) {
throw new PlotSquaredException(PlotSquaredException.PlotError.PLOTMAIN_NULL, "Failed to fetch the plotmain instance, Plot API for " + plugin.getName() + " will be disabled");
}
}
@ -143,7 +149,8 @@ public class PlotAPI {
/**
* Return all plots for a player
*
* @param player Player, whose plots to search for
* @param player
* Player, whose plots to search for
* @return all plots that a player owns
*/
public Set<Plot> getPlayerPlots(@NotNull final Player player) {
@ -153,9 +160,12 @@ public class PlotAPI {
/**
* Add a plot world
*
* @param world World Name
* @param plotWorld Plot World Object
* @param manager World Manager
* @param world
* World Name
* @param plotWorld
* Plot World Object
* @param manager
* World Manager
* @see com.intellectualcrafters.plot.PlotMain#addPlotWorld(String,
* com.intellectualcrafters.plot.object.PlotWorld,
* com.intellectualcrafters.plot.object.PlotManager)
@ -247,7 +257,8 @@ public class PlotAPI {
* Get the plot manager for a world. - Most of these methods can be accessed
* through the PlotHelper
*
* @param world Which manager to get
* @param world
* Which manager to get
* @return PlotManager
* @see com.intellectualcrafters.plot.object.PlotManager
* @see PlotMain#getPlotManager(org.bukkit.World)
@ -260,7 +271,8 @@ public class PlotAPI {
* Get the plot manager for a world. - Contains useful low level methods for
* plot merging, clearing, and tessellation
*
* @param world Plot World
* @param world
* Plot World
* @return PlotManager
* @see PlotMain#getPlotManager(String)
* @see com.intellectualcrafters.plot.object.PlotManager
@ -274,7 +286,8 @@ public class PlotAPI {
* will need to downcast for the specific settings a Generator has. e.g.
* DefaultPlotWorld class implements PlotWorld
*
* @param world (to get settings of)
* @param world
* (to get settings of)
* @return PlotWorld class for that world ! will return null if not a plot
* world world
* @see PlotMain#getWorldSettings(org.bukkit.World)
@ -287,7 +300,8 @@ public class PlotAPI {
/**
* Get the settings for a world (settings bundled in PlotWorld class)
*
* @param world (to get settings of)
* @param world
* (to get settings of)
* @return PlotWorld class for that world ! will return null if not a plot
* world world
* @see PlotMain#getWorldSettings(String)
@ -300,9 +314,12 @@ public class PlotAPI {
/**
* Send a message to a player.
*
* @param player Player that will receive the message
* @param c (Caption)
* @see com.intellectualcrafters.plot.util.PlayerFunctions#sendMessage(org.bukkit.entity.Player, com.intellectualcrafters.plot.config.C, String...)
* @param player
* Player that will receive the message
* @param c
* (Caption)
* @see com.intellectualcrafters.plot.util.PlayerFunctions#sendMessage(org.bukkit.entity.Player,
* com.intellectualcrafters.plot.config.C, String...)
*/
public void sendMessage(@NotNull final Player player, @NotNull final C c) {
PlayerFunctions.sendMessage(player, c);
@ -311,9 +328,12 @@ public class PlotAPI {
/**
* Send a message to a player. - Supports color codes
*
* @param player Player that will receive the message
* @param string The message
* @see com.intellectualcrafters.plot.util.PlayerFunctions#sendMessage(org.bukkit.entity.Player, String)
* @param player
* Player that will receive the message
* @param string
* The message
* @see com.intellectualcrafters.plot.util.PlayerFunctions#sendMessage(org.bukkit.entity.Player,
* String)
*/
public void sendMessage(@NotNull final Player player, @NotNull final String string) {
PlayerFunctions.sendMessage(player, string);
@ -322,7 +342,8 @@ public class PlotAPI {
/**
* Send a message to the console. - Supports color codes
*
* @param msg Message that should be sent to the console
* @param msg
* Message that should be sent to the console
* @see PlotMain#sendConsoleSenderMessage(String)
*/
public void sendConsoleMessage(@NotNull final String msg) {
@ -332,7 +353,8 @@ public class PlotAPI {
/**
* Send a message to the console
*
* @param c (Caption)
* @param c
* (Caption)
* @see #sendConsoleMessage(String)
* @see com.intellectualcrafters.plot.config.C
*/
@ -343,7 +365,8 @@ public class PlotAPI {
/**
* Register a flag for use in plots
*
* @param flag Flag that should be registered
* @param flag
* Flag that should be registered
* @see com.intellectualcrafters.plot.flag.FlagManager#addFlag(com.intellectualcrafters.plot.flag.AbstractFlag)
* @see com.intellectualcrafters.plot.flag.AbstractFlag
*/
@ -365,11 +388,15 @@ public class PlotAPI {
/**
* Get a plot based on the ID
*
* @param world World in which the plot is located
* @param x Plot Location X Co-ord
* @param z Plot Location Z Co-ord
* @param world
* World in which the plot is located
* @param x
* Plot Location X Co-ord
* @param z
* Plot Location Z Co-ord
* @return plot, null if ID is wrong
* @see PlotHelper#getPlot(org.bukkit.World, com.intellectualcrafters.plot.object.PlotId)
* @see PlotHelper#getPlot(org.bukkit.World,
* com.intellectualcrafters.plot.object.PlotId)
* @see com.intellectualcrafters.plot.object.Plot
*/
public Plot getPlot(@NotNull final World world, final int x, final int z) {
@ -379,7 +406,8 @@ public class PlotAPI {
/**
* Get a plot based on the location
*
* @param l The location that you want to to retrieve the plot from
* @param l
* The location that you want to to retrieve the plot from
* @return plot if found, otherwise it creates a temporary plot-
* @see PlotHelper#getCurrentPlot(org.bukkit.Location)
* @see com.intellectualcrafters.plot.object.Plot
@ -391,7 +419,8 @@ public class PlotAPI {
/**
* Get a plot based on the player location
*
* @param player Get the current plot for the player location
* @param player
* Get the current plot for the player location
* @return plot if found, otherwise it creates a temporary plot
* @see #getPlot(org.bukkit.Location)
* @see com.intellectualcrafters.plot.object.Plot
@ -403,7 +432,8 @@ public class PlotAPI {
/**
* Check whether or not a player has a plot
*
* @param player Player that you want to check for
* @param player
* Player that you want to check for
* @return true if player has a plot, false if not.
* @see #getPlots(org.bukkit.World, org.bukkit.entity.Player, boolean)
*/
@ -414,8 +444,10 @@ public class PlotAPI {
/**
* Get all plots for the player
*
* @param plr to search for
* @param just_owner should we just search for owner? Or with rights?
* @param plr
* to search for
* @param just_owner
* should we just search for owner? Or with rights?
* @see com.intellectualcrafters.plot.object.Plot
*/
public Plot[] getPlots(@NotNull final World world, @NotNull final Player plr, final boolean just_owner) {
@ -425,7 +457,8 @@ public class PlotAPI {
if ((plot.owner != null) && (plot.owner == UUIDHandler.getUUID(plr))) {
pPlots.add(plot);
}
} else {
}
else {
if (plot.hasRights(plr)) {
pPlots.add(plot);
}
@ -437,7 +470,8 @@ public class PlotAPI {
/**
* Get all plots for the world
*
* @param world to get plots of
* @param world
* to get plots of
* @return Plot[] - array of plot objects in world
* @see PlotMain#getWorldPlots(org.bukkit.World)
* @see com.intellectualcrafters.plot.object.Plot
@ -459,7 +493,8 @@ public class PlotAPI {
/**
* Get if plot world
*
* @param world (to check if plot world)
* @param world
* (to check if plot world)
* @return boolean (if plot world or not)
* @see com.intellectualcrafters.plot.PlotMain#isPlotWorld(org.bukkit.World)
*/
@ -470,25 +505,31 @@ public class PlotAPI {
/**
* Get plot locations
*
* @param p Plot that you want to get the locations for
* @param p
* Plot that you want to get the locations for
* @return [0] = bottomLc, [1] = topLoc, [2] = home
* @see com.intellectualcrafters.plot.util.PlotHelper#getPlotBottomLoc(org.bukkit.World, com.intellectualcrafters.plot.object.PlotId)
* @see com.intellectualcrafters.plot.util.PlotHelper#getPlotTopLoc(org.bukkit.World, com.intellectualcrafters.plot.object.PlotId)
* @see com.intellectualcrafters.plot.util.PlotHelper#getPlotHome(org.bukkit.World, com.intellectualcrafters.plot.object.Plot)
* @see com.intellectualcrafters.plot.util.PlotHelper#getPlotBottomLoc(org.bukkit.World,
* com.intellectualcrafters.plot.object.PlotId)
* @see com.intellectualcrafters.plot.util.PlotHelper#getPlotTopLoc(org.bukkit.World,
* com.intellectualcrafters.plot.object.PlotId)
* @see com.intellectualcrafters.plot.util.PlotHelper#getPlotHome(org.bukkit.World,
* com.intellectualcrafters.plot.object.Plot)
* @see com.intellectualcrafters.plot.object.PlotHomePosition
* @see com.intellectualcrafters.plot.object.Plot
*/
public Location[] getLocations(@NotNull final Plot p) {
final World world = Bukkit.getWorld(p.world);
return new Location[]{PlotHelper.getPlotBottomLoc(world, p.id), PlotHelper.getPlotTopLoc(world, p.id), PlotHelper.getPlotHome(world, p.id)};
return new Location[] { PlotHelper.getPlotBottomLoc(world, p.id), PlotHelper.getPlotTopLoc(world, p.id), PlotHelper.getPlotHome(world, p.id) };
}
/**
* Get home location
*
* @param p Plot that you want to get the location for
* @param p
* Plot that you want to get the location for
* @return plot bottom location
* @see com.intellectualcrafters.plot.util.PlotHelper#getPlotHome(org.bukkit.World, com.intellectualcrafters.plot.object.Plot)
* @see com.intellectualcrafters.plot.util.PlotHelper#getPlotHome(org.bukkit.World,
* com.intellectualcrafters.plot.object.Plot)
* @see com.intellectualcrafters.plot.object.PlotHomePosition
* @see com.intellectualcrafters.plot.object.Plot
*/
@ -499,9 +540,11 @@ public class PlotAPI {
/**
* Get Bottom Location (min, min, min)
*
* @param p Plot that you want to get the location for
* @param p
* Plot that you want to get the location for
* @return plot bottom location
* @see com.intellectualcrafters.plot.util.PlotHelper#getPlotBottomLoc(org.bukkit.World, com.intellectualcrafters.plot.object.PlotId)
* @see com.intellectualcrafters.plot.util.PlotHelper#getPlotBottomLoc(org.bukkit.World,
* com.intellectualcrafters.plot.object.PlotId)
* @see com.intellectualcrafters.plot.object.Plot
*/
public Location getBottomLocation(@NotNull final Plot p) {
@ -512,9 +555,11 @@ public class PlotAPI {
/**
* Get Top Location (max, max, max)
*
* @param p Plot that you want to get the location for
* @param p
* Plot that you want to get the location for
* @return plot top location
* @see PlotHelper#getPlotTopLoc(org.bukkit.World, com.intellectualcrafters.plot.object.PlotId)
* @see PlotHelper#getPlotTopLoc(org.bukkit.World,
* com.intellectualcrafters.plot.object.PlotId)
* @see com.intellectualcrafters.plot.object.Plot
*/
public Location getTopLocation(@NotNull final Plot p) {
@ -525,7 +570,8 @@ public class PlotAPI {
/**
* Check whether or not a player is in a plot
*
* @param player who we're checking for
* @param player
* who we're checking for
* @return true if the player is in a plot, false if not-
* @see com.intellectualcrafters.plot.util.PlayerFunctions#isInPlot(org.bukkit.entity.Player)
*/
@ -536,7 +582,8 @@ public class PlotAPI {
/**
* Register a subcommand
*
* @param c SubCommand, that we want to register
* @param c
* SubCommand, that we want to register
* @see com.intellectualcrafters.plot.commands.MainCommand#subCommands
* @see com.intellectualcrafters.plot.commands.SubCommand
*/
@ -557,10 +604,13 @@ public class PlotAPI {
/**
* Get the player plot count
*
* @param world Specify the world we want to select the plots from
* @param player Player, for whom we're getting the plot count
* @param world
* Specify the world we want to select the plots from
* @param player
* Player, for whom we're getting the plot count
* @return the number of plots the player has
* @see com.intellectualcrafters.plot.util.PlayerFunctions#getPlayerPlotCount(org.bukkit.World, org.bukkit.entity.Player)
* @see com.intellectualcrafters.plot.util.PlayerFunctions#getPlayerPlotCount(org.bukkit.World,
* org.bukkit.entity.Player)
*/
public int getPlayerPlotCount(@NotNull final World world, @NotNull final Player player) {
return PlayerFunctions.getPlayerPlotCount(world, player);
@ -569,10 +619,13 @@ public class PlotAPI {
/**
* Get a collection containing the players plots
*
* @param world Specify the world we want to select the plots from
* @param player Player, for whom we're getting the plots
* @param world
* Specify the world we want to select the plots from
* @param player
* Player, for whom we're getting the plots
* @return a set containing the players plots
* @see com.intellectualcrafters.plot.util.PlayerFunctions#getPlayerPlots(org.bukkit.World, org.bukkit.entity.Player)
* @see com.intellectualcrafters.plot.util.PlayerFunctions#getPlayerPlots(org.bukkit.World,
* org.bukkit.entity.Player)
* @see com.intellectualcrafters.plot.object.Plot
*/
public Set<Plot> getPlayerPlots(@NotNull final World world, @NotNull final Player player) {
@ -582,7 +635,9 @@ public class PlotAPI {
/**
* Get the numbers of plots, which the player is able to build in
*
* @param player Player, for whom we're getting the plots (trusted, helper and owner)
* @param player
* Player, for whom we're getting the plots (trusted, helper and
* owner)
* @return the number of allowed plots
* @see com.intellectualcrafters.plot.util.PlayerFunctions#getAllowedPlots(org.bukkit.entity.Player)
*/

View File

@ -21,6 +21,12 @@
package com.intellectualcrafters.plot.commands;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.config.Settings;
@ -33,12 +39,6 @@ import com.intellectualcrafters.plot.object.PlotWorld;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Player;
@SuppressWarnings("deprecation")
public class Auto extends SubCommand {
public static PlotId lastPlot = new PlotId(0, 0);
@ -53,16 +53,20 @@ public class Auto extends SubCommand {
if (absX > absY) {
if (id.x > 0) {
return new PlotId(id.x, id.y + 1);
} else {
}
else {
return new PlotId(id.x, id.y - 1);
}
} else if (absY > absX) {
}
else if (absY > absX) {
if (id.y > 0) {
return new PlotId(id.x - 1, id.y);
} else {
}
else {
return new PlotId(id.x + 1, id.y);
}
} else {
}
else {
if (id.x.equals(id.y) && (id.x > 0)) {
return new PlotId(id.x, id.y + step);
}
@ -85,10 +89,12 @@ public class Auto extends SubCommand {
String schematic = "";
if (PlotMain.getPlotWorlds().length == 1) {
world = Bukkit.getWorld(PlotMain.getPlotWorlds()[0]);
} else {
}
else {
if (PlotMain.isPlotWorld(plr.getWorld())) {
world = plr.getWorld();
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.NOT_IN_PLOT_WORLD);
return false;
}
@ -108,7 +114,8 @@ public class Auto extends SubCommand {
if (args.length > 1) {
schematic = args[1];
}
} catch (final Exception e) {
}
catch (final Exception e) {
size_x = 1;
size_z = 1;
schematic = args[0];
@ -116,21 +123,22 @@ public class Auto extends SubCommand {
// "&cError: Invalid size (X,Y)");
// return false;
}
} else {
}
else {
schematic = args[0];
// PlayerFunctions.sendMessage(plr, C.NO_PERMISSION);
// return false;
}
}
if (size_x * size_z > Settings.MAX_AUTO_SIZE) {
if ((size_x * size_z) > Settings.MAX_AUTO_SIZE) {
PlayerFunctions.sendMessage(plr, C.CANT_CLAIM_MORE_PLOTS_NUM, Settings.MAX_AUTO_SIZE + "");
return false;
}
int diff = PlayerFunctions.getPlayerPlotCount(world, plr) - PlayerFunctions.getAllowedPlots(plr);
if (diff + (size_x * size_z) >= 0) {
final int diff = PlayerFunctions.getPlayerPlotCount(world, plr) - PlayerFunctions.getAllowedPlots(plr);
if ((diff + (size_x * size_z)) >= 0) {
if (diff < 0) {
PlayerFunctions.sendMessage(plr, C.CANT_CLAIM_MORE_PLOTS_NUM, - diff - 1 + "");
PlayerFunctions.sendMessage(plr, C.CANT_CLAIM_MORE_PLOTS_NUM, (-diff - 1) + "");
}
else {
PlayerFunctions.sendMessage(plr, C.CANT_CLAIM_MORE_PLOTS);
@ -152,7 +160,7 @@ public class Auto extends SubCommand {
}
}
if (!schematic.equals("")) {
// if (pWorld.SCHEMATIC_CLAIM_SPECIFY) {
// if (pWorld.SCHEMATIC_CLAIM_SPECIFY) {
if (!pWorld.SCHEMATICS.contains(schematic.toLowerCase())) {
sendMessage(plr, C.SCHEMATIC_INVALID, "non-existent: " + schematic);
return true;
@ -161,36 +169,35 @@ public class Auto extends SubCommand {
PlayerFunctions.sendMessage(plr, C.NO_SCHEMATIC_PERMISSION, schematic);
return true;
}
// }
// }
}
boolean br = false;
if ((size_x == 1) && (size_z == 1)) {
while (!br) {
Plot plot = PlotHelper.getPlot(world, Auto.lastPlot);
final Plot plot = PlotHelper.getPlot(world, Auto.lastPlot);
if ((plot == null) || (plot.owner == null)) {
Claim.claimPlot(plr, plot, true, true);
br = true;
final PlotWorld pw = PlotMain.getWorldSettings(world);
final Plot plot2 = PlotMain.getPlots(world).get(plot.id);
if ((pw.DEFAULT_FLAGS != null) && (pw.DEFAULT_FLAGS.size() > 0)) {
Flag[] flags = FlagManager.parseFlags(pw.DEFAULT_FLAGS);
final Flag[] flags = FlagManager.parseFlags(pw.DEFAULT_FLAGS);
plot2.settings.setFlags(flags);
DBFunc.setFlags(plot2.world, plot2, flags);
}
}
Auto.lastPlot = getNextPlot(Auto.lastPlot, 1);
}
} else {
}
else {
boolean lastPlot = true;
PlotId lastId = Auto.lastPlot;
while (!br) {
final PlotId start = getNextPlot(Auto.lastPlot, 1);
// Checking if the current set of plots is a viable option.
Auto.lastPlot = start;
if (lastPlot) {
lastId = start;
}
if (PlotMain.getPlots(world).get(start) != null && PlotMain.getPlots(world).get(start).owner != null) {
if ((PlotMain.getPlots(world).get(start) != null) && (PlotMain.getPlots(world).get(start).owner != null)) {
continue;
}
else {
@ -214,7 +221,7 @@ public class Auto extends SubCommand {
final PlotWorld pw = PlotMain.getWorldSettings(world);
final Plot plot2 = PlotMain.getPlots(world).get(start);
if ((pw.DEFAULT_FLAGS != null) && (pw.DEFAULT_FLAGS.size() > 0)) {
Flag[] flags = FlagManager.parseFlags(pw.DEFAULT_FLAGS);
final Flag[] flags = FlagManager.parseFlags(pw.DEFAULT_FLAGS);
plot2.settings.setFlags(flags);
DBFunc.setFlags(plot2.world, plot2, flags);
}

View File

@ -1,9 +1,10 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.entity.Player;
/**
* Created 2014-11-09 for PlotSquared
@ -17,14 +18,14 @@ public class Ban extends SubCommand {
}
@Override
public boolean execute(Player plr, String... args) {
public boolean execute(final Player plr, final String... args) {
if (args.length < 1) {
return PlayerFunctions.sendMessage(plr, "&cUsage: &c" + usage);
return PlayerFunctions.sendMessage(plr, "&cUsage: &c" + this.usage);
}
if (!PlayerFunctions.isInPlot(plr)) {
return sendMessage(plr, C.NOT_IN_PLOT);
}
Plot plot = PlayerFunctions.getCurrentPlot(plr);
final Plot plot = PlayerFunctions.getCurrentPlot(plr);
if (!plot.hasRights(plr)) {
return sendMessage(plr, C.NO_PLOT_PERMS);
}

View File

@ -21,6 +21,11 @@
package com.intellectualcrafters.plot.commands;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
@ -34,9 +39,6 @@ import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.SchematicHandler;
import com.intellectualcrafters.plot.util.SetBlockFast;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
/**
* @author Citymonstret
@ -47,11 +49,11 @@ public class Claim extends SubCommand {
super(Command.CLAIM, "Claim the current plot you're standing on.", "claim", CommandCategory.CLAIMING, true);
}
public static boolean claimPlot(final Player player, final Plot plot, final boolean teleport, boolean auto) {
public static boolean claimPlot(final Player player, final Plot plot, final boolean teleport, final boolean auto) {
return claimPlot(player, plot, teleport, "", auto);
}
public static boolean claimPlot(final Player player, final Plot plot, final boolean teleport, final String schematic, boolean auto) {
public static boolean claimPlot(final Player player, final Plot plot, final boolean teleport, final String schematic, final boolean auto) {
final PlayerClaimPlotEvent event = new PlayerClaimPlotEvent(player, plot, auto);
Bukkit.getPluginManager().callEvent(event);
if (!event.isCancelled()) {
@ -69,7 +71,8 @@ public class Claim extends SubCommand {
SchematicHandler.Schematic sch;
if (schematic.equals("")) {
sch = SchematicHandler.getSchematic(world.SCHEMATIC_FILE);
} else {
}
else {
sch = SchematicHandler.getSchematic(schematic);
if (sch == null) {
sch = SchematicHandler.getSchematic(world.SCHEMATIC_FILE);
@ -78,7 +81,7 @@ public class Claim extends SubCommand {
SchematicHandler.paste(player.getLocation(), sch, plot2, 0, 0);
}
if ((world.DEFAULT_FLAGS != null) && (world.DEFAULT_FLAGS.size() > 0)) {
Flag[] flags = FlagManager.parseFlags(world.DEFAULT_FLAGS);
final Flag[] flags = FlagManager.parseFlags(world.DEFAULT_FLAGS);
plot2.settings.setFlags(flags);
DBFunc.setFlags(plot.world, plot2, flags);
}

View File

@ -21,6 +21,9 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
@ -29,9 +32,6 @@ import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.UUIDHandler;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
public class Clear extends SubCommand {
public Clear() {
@ -44,19 +44,23 @@ public class Clear extends SubCommand {
// Is console
if (args.length < 2) {
PlotMain.sendConsoleSenderMessage("You need to specify two arguments: ID (0;0) & World (world)");
} else {
PlotId id = PlotId.fromString(args[0]);
String world = args[1];
}
else {
final PlotId id = PlotId.fromString(args[0]);
final String world = args[1];
if (id == null) {
PlotMain.sendConsoleSenderMessage("Invalid Plot ID: " + args[0]);
} else {
}
else {
if (!PlotMain.isPlotWorld(world)) {
PlotMain.sendConsoleSenderMessage("Invalid plot world: " + world);
} else {
Plot plot = PlotHelper.getPlot(Bukkit.getWorld(world), id);
}
else {
final Plot plot = PlotHelper.getPlot(Bukkit.getWorld(world), id);
if (plot == null) {
PlotMain.sendConsoleSenderMessage("Could not find plot " + args[0] + " in world " + world);
} else {
}
else {
plot.clear(null, false);
PlotMain.sendConsoleSenderMessage("Plot " + plot.getId().toString() + " cleared.");
}

View File

@ -21,13 +21,14 @@
package com.intellectualcrafters.plot.commands;
import static com.intellectualcrafters.plot.object.PlotSelection.currentSelection;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.PlotId;
import com.intellectualcrafters.plot.object.PlotSelection;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.entity.Player;
import static com.intellectualcrafters.plot.object.PlotSelection.currentSelection;
public class Clipboard extends SubCommand {

View File

@ -177,7 +177,8 @@ public enum Command {
private final CommandPermission permission;
/**
* @param command Command "name" (/plot [cmd])
* @param command
* Command "name" (/plot [cmd])
*/
Command(final String command) {
this.command = command;
@ -186,8 +187,10 @@ public enum Command {
}
/**
* @param command Command "name" (/plot [cmd])
* @param permission Command Permission Node
* @param command
* Command "name" (/plot [cmd])
* @param permission
* Command Permission Node
*/
Command(final String command, final CommandPermission permission) {
this.command = command;
@ -196,8 +199,10 @@ public enum Command {
}
/**
* @param command Command "name" (/plot [cmd])
* @param alias Command Alias
* @param command
* Command "name" (/plot [cmd])
* @param alias
* Command Alias
*/
Command(final String command, final String alias) {
this.command = command;
@ -206,9 +211,12 @@ public enum Command {
}
/**
* @param command Command "name" (/plot [cmd])
* @param alias Command Alias
* @param permission Required Permission Node
* @param command
* Command "name" (/plot [cmd])
* @param alias
* Command Alias
* @param permission
* Required Permission Node
*/
Command(final String command, final String alias, final CommandPermission permission) {
this.command = command;

View File

@ -21,9 +21,10 @@
package com.intellectualcrafters.plot.commands;
import com.intellectualcrafters.plot.PlotMain;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
/**
* Created by Citymonstret on 2014-08-03.
*
@ -37,14 +38,16 @@ public class CommandPermission {
public final String permission;
/**
* @param permission Command Permission
* @param permission
* Command Permission
*/
public CommandPermission(final String permission) {
this.permission = permission.toLowerCase();
}
/**
* @param player Does the player have the permission?
* @param player
* Does the player have the permission?
* @return true of player has the required permission node
*/
public boolean hasPermission(final Player player) {

View File

@ -21,17 +21,18 @@
package com.intellectualcrafters.plot.commands;
import java.util.Arrays;
import java.util.List;
import org.apache.commons.lang.StringUtils;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotComment;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.apache.commons.lang.StringUtils;
import org.bukkit.entity.Player;
import java.util.Arrays;
import java.util.List;
public class Comment extends SubCommand {
@ -61,7 +62,8 @@ public class Comment extends SubCommand {
DBFunc.setComment(plr.getWorld().getName(), plot, comment);
return true;
} else {
}
else {
return sendMessage(plr, C.NO_PERMISSION, "plots.comment." + args[0].toLowerCase());
}
}

View File

@ -21,13 +21,14 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotSelection;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import org.bukkit.entity.Player;
public class Copy extends SubCommand {

View File

@ -1,9 +1,10 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.entity.Player;
/**
* Created 2014-11-09 for PlotSquared
@ -17,14 +18,14 @@ public class DEOP extends SubCommand {
}
@Override
public boolean execute(Player plr, String... args) {
public boolean execute(final Player plr, final String... args) {
if (args.length < 1) {
return PlayerFunctions.sendMessage(plr, "&cUsage: &c" + usage);
return PlayerFunctions.sendMessage(plr, "&cUsage: &c" + this.usage);
}
if (!PlayerFunctions.isInPlot(plr)) {
return sendMessage(plr, C.NOT_IN_PLOT);
}
Plot plot = PlayerFunctions.getCurrentPlot(plr);
final Plot plot = PlayerFunctions.getCurrentPlot(plr);
if (!plot.hasRights(plr)) {
return sendMessage(plr, C.NO_PLOT_PERMS);
}

View File

@ -1,5 +1,15 @@
package com.intellectualcrafters.plot.commands;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.UUID;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.database.MySQL;
import com.intellectualcrafters.plot.database.SQLManager;
@ -8,17 +18,6 @@ import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.StringComparison;
import com.intellectualcrafters.plot.util.UUIDHandler;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.UUID;
/**
* Created 2014-11-15 for PlotSquared
*
@ -26,47 +25,51 @@ import java.util.UUID;
*/
public class Database extends SubCommand {
final String[] tables = new String[]{
"plot_trusted", "plot_ratings", "plot_comments"
};
final String[] tables = new String[] { "plot_trusted", "plot_ratings", "plot_comments" };
public Database() {
super(Command.DATABASE, "Convert/Backup Storage", "database [type] [...details]", CommandCategory.DEBUG, false);
}
private static boolean sendMessageU(UUID uuid, String msg) {
private static boolean sendMessageU(final UUID uuid, final String msg) {
if (uuid == null) {
PlotMain.sendConsoleSenderMessage(msg);
} else {
Player p = UUIDHandler.uuidWrapper.getPlayer(uuid);
if (p != null && p.isOnline())
}
else {
final Player p = UUIDHandler.uuidWrapper.getPlayer(uuid);
if ((p != null) && p.isOnline()) {
return PlayerFunctions.sendMessage(p, msg);
else
}
else {
return sendMessageU(null, msg);
}
}
return true;
}
public static void insertPlots(final SQLManager manager, final UUID requester, final Connection c) {
Plugin p = PlotMain.getMain();
final Plugin p = PlotMain.getMain();
final java.util.Set<Plot> plots = PlotMain.getPlots();
p.getServer().getScheduler().runTaskAsynchronously(p, new Runnable() {
@Override
public void run() {
try {
ArrayList<Plot> ps = new ArrayList<>();
for (Plot p : plots)
final ArrayList<Plot> ps = new ArrayList<>();
for (final Plot p : plots) {
ps.add(p);
}
manager.createPlots(ps);
manager.createAllSettingsAndHelpers(ps);
sendMessageU(requester, "&6Database conversion finished");
} catch (Exception e) {
}
catch (final Exception e) {
sendMessageU(requester, "Failed to insert plot objects, see stacktrace for info");
e.printStackTrace();
}
try {
c.close();
} catch (SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
}
}
@ -74,67 +77,56 @@ public class Database extends SubCommand {
}
@Override
public boolean execute(Player plr, String... args) {
public boolean execute(final Player plr, final String... args) {
if (args.length < 1) {
return sendMessage(plr, "/plot database [sqlite/mysql]");
}
String type = new StringComparison(args[0], new String[]{"mysql", "sqlite"}).getBestMatch().toLowerCase();
final String type = new StringComparison(args[0], new String[] { "mysql", "sqlite" }).getBestMatch().toLowerCase();
switch (type) {
case "mysql":
if (args.length < 6) {
return sendMessage(plr, "/plot database mysql [host] [port] [username] [password] [database] {prefix}");
}
String host =
args[1];
String port =
args[2];
String username =
args[3];
String password =
args[4];
String database =
args[5];
String prefix =
"";
final String host = args[1];
final String port = args[2];
final String username = args[3];
final String password = args[4];
final String database = args[5];
String prefix = "";
if (args.length > 6) {
prefix = args[6];
}
Connection n;
try {
n = new MySQL(
PlotMain.getMain(),
host,
port,
database,
username,
password
).openConnection();
n = new MySQL(PlotMain.getMain(), host, port, database, username, password).openConnection();
// Connection
if (n.isClosed()) {
return sendMessage(plr, "Failed to open connection");
}
} catch (SQLException | ClassNotFoundException e) {
}
catch (SQLException | ClassNotFoundException e) {
e.printStackTrace();
return sendMessage(plr, "Failed to open connection, read stacktrace for info");
}
SQLManager manager = new SQLManager(n, prefix);
final SQLManager manager = new SQLManager(n, prefix);
try {
final DatabaseMetaData meta = n.getMetaData();
ResultSet set = meta.getTables(null, null, prefix + "plot", null);
if (!set.next()) {
manager.createTables("mysql", true);
} else {
for (String s : tables) {
}
else {
for (final String s : this.tables) {
set = meta.getTables(null, null, prefix + s, null);
if (!set.next()) {
manager.createTables("mysql", false);
}
}
}
} catch (SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
return sendMessage(plr, "Could not create the required tables and/or load the database") &&
sendMessage(plr, "Please see the stacktrace for more information");
return sendMessage(plr, "Could not create the required tables and/or load the database") && sendMessage(plr, "Please see the stacktrace for more information");
}
UUID requester = null;
if (plr != null) {
@ -154,10 +146,11 @@ public class Database extends SubCommand {
return false;
}
private boolean sendMessage(Player player, String msg) {
private boolean sendMessage(final Player player, final String msg) {
if (player == null) {
PlotMain.sendConsoleSenderMessage(msg);
} else {
}
else {
PlayerFunctions.sendMessage(player, msg);
}
return true;

View File

@ -21,15 +21,16 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.util.Lag;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.RUtils;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Player;
public class Debug extends SubCommand {
@ -68,8 +69,8 @@ public class Debug extends SubCommand {
information.append(getSection(section, "PlotWorld"));
information.append(getLine(line, "Plot Worlds", worlds));
information.append(getLine(line, "Owned Plots", PlotMain.getPlots().size()));
//information.append(getLine(line, "PlotWorld Size",
//PlotHelper.getWorldFolderSize() + "MB"));
// information.append(getLine(line, "PlotWorld Size",
// PlotHelper.getWorldFolderSize() + "MB"));
for (final String worldname : PlotMain.getPlotWorlds()) {
final World world = Bukkit.getWorld(worldname);
information.append(getLine(line, "World: " + world.getName() + " size", PlotHelper.getWorldFolderSize(world)));

View File

@ -21,16 +21,9 @@
package com.intellectualcrafters.plot.commands;
import com.google.common.collect.BiMap;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
import com.intellectualcrafters.plot.events.PlayerClaimPlotEvent;
import com.intellectualcrafters.plot.flag.FlagManager;
import com.intellectualcrafters.plot.object.*;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.UUIDHandler;
import java.util.ArrayList;
import java.util.UUID;
import org.bukkit.Bukkit;
import org.bukkit.Chunk;
import org.bukkit.Location;
@ -39,8 +32,20 @@ import org.bukkit.block.Block;
import org.bukkit.block.Sign;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.UUID;
import com.google.common.collect.BiMap;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
import com.intellectualcrafters.plot.events.PlayerClaimPlotEvent;
import com.intellectualcrafters.plot.flag.FlagManager;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotId;
import com.intellectualcrafters.plot.object.PlotManager;
import com.intellectualcrafters.plot.object.PlotWorld;
import com.intellectualcrafters.plot.object.StringWrapper;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.UUIDHandler;
/**
* @author Citymonstret
@ -90,7 +95,8 @@ public class DebugClaimTest extends SubCommand {
min = new PlotId(Integer.parseInt(split1[0]), Integer.parseInt(split1[1]));
max = new PlotId(Integer.parseInt(split2[0]), Integer.parseInt(split2[1]));
} catch (final Exception e) {
}
catch (final Exception e) {
return !PlayerFunctions.sendMessage(null, "&cInvalid min/max values. &7The values are to Plot IDs in the format &cX;Y &7where X,Y are the plot coords\nThe conversion will only check the plots in the selected area.");
}
PlayerFunctions.sendMessage(null, "&3Sign Block&8->&3PlotSquared&8: &7Beginning sign to plot conversion. This may take a while...");
@ -148,7 +154,8 @@ public class DebugClaimTest extends SubCommand {
plot.owner = uuid;
plot.hasChanged = true;
plots.add(plot);
} else {
}
else {
PlayerFunctions.sendMessage(null, " - &cInvalid playername: " + plot.id + " : " + line);
}
}
@ -167,11 +174,13 @@ public class DebugClaimTest extends SubCommand {
PlayerFunctions.sendMessage(null, "&3Sign Block&8->&3PlotSquared&8: &7Complete!");
} else {
}
else {
PlayerFunctions.sendMessage(null, "No plots were found for the given search.");
}
} else {
}
else {
PlayerFunctions.sendMessage(plr, "This debug command can only be executed by console as it has been deemed unsafe if abused.");
}
return true;

View File

@ -21,12 +21,13 @@
package com.intellectualcrafters.plot.commands;
import java.lang.reflect.Field;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.database.DBFunc;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.entity.Player;
import java.lang.reflect.Field;
/**
* @author Citymonstret
@ -44,12 +45,14 @@ public class DebugLoadTest extends SubCommand {
final Field fPlots = PlotMain.class.getDeclaredField("plots");
fPlots.setAccessible(true);
fPlots.set(null, DBFunc.getPlots());
} catch (final Exception e) {
}
catch (final Exception e) {
PlotMain.sendConsoleSenderMessage("&3===FAILED&3===");
e.printStackTrace();
PlotMain.sendConsoleSenderMessage("&3===END OF STACKTRACE===");
}
} else {
}
else {
PlayerFunctions.sendMessage(plr, "This debug command can only be executed by console as it has been deemed unsafe if abused.");
}
return true;

View File

@ -21,13 +21,14 @@
package com.intellectualcrafters.plot.commands;
import java.util.ArrayList;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.database.DBFunc;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.entity.Player;
import java.util.ArrayList;
/**
* @author Citymonstret
@ -45,7 +46,8 @@ public class DebugSaveTest extends SubCommand {
plots.addAll(PlotMain.getPlots());
DBFunc.createPlots(plots);
DBFunc.createAllSettingsAndHelpers(plots);
} else {
}
else {
PlayerFunctions.sendMessage(plr, "This debug command can only be executed by console as it has been deemed unsafe if abused.");
}
return true;

View File

@ -21,14 +21,16 @@
package com.intellectualcrafters.plot.commands;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotWorld;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.entity.Player;
public class Delete extends SubCommand {
@ -50,7 +52,7 @@ public class Delete extends SubCommand {
}
assert plot != null;
final PlotWorld pWorld = PlotMain.getWorldSettings(plot.getWorld());
if (PlotMain.useEconomy && pWorld.USE_ECONOMY && plot!=null && plot.hasOwner() && plot.getOwner().equals(plr.getUniqueId())) {
if (PlotMain.useEconomy && pWorld.USE_ECONOMY && (plot != null) && plot.hasOwner() && plot.getOwner().equals(plr.getUniqueId())) {
final double c = pWorld.SELL_PRICE;
if (c > 0d) {
final Economy economy = PlotMain.economy;
@ -65,7 +67,8 @@ public class Delete extends SubCommand {
if ((Math.abs(plot.id.x) <= Math.abs(Auto.lastPlot.x)) && (Math.abs(plot.id.y) <= Math.abs(Auto.lastPlot.y))) {
Auto.lastPlot = plot.id;
}
} else {
}
else {
PlayerFunctions.sendMessage(plr, "Plot deletion has been denied.");
}
return true;

View File

@ -21,6 +21,12 @@
package com.intellectualcrafters.plot.commands;
import java.util.UUID;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
@ -29,13 +35,6 @@ import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.UUIDHandler;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.entity.Player;
import java.util.UUID;
@SuppressWarnings("deprecation")
public class Denied extends SubCommand {
@ -63,7 +62,8 @@ public class Denied extends SubCommand {
if (args[1].equalsIgnoreCase("*")) {
uuid = DBFunc.everyone;
} else {
}
else {
uuid = UUIDHandler.getUUID(args[1]);
}
if (!plot.denied.contains(uuid)) {
@ -88,11 +88,12 @@ public class Denied extends SubCommand {
DBFunc.setDenied(plr.getWorld().getName(), plot, Bukkit.getOfflinePlayer(args[1]));
final PlayerPlotDeniedEvent event = new PlayerPlotDeniedEvent(plr, plot, uuid, true);
Bukkit.getPluginManager().callEvent(event);
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.ALREADY_ADDED);
return false;
}
Player player = UUIDHandler.uuidWrapper.getPlayer(uuid);
final Player player = UUIDHandler.uuidWrapper.getPlayer(uuid);
if (!uuid.equals(DBFunc.everyone) && (player != null) && player.isOnline()) {
final Plot pl = PlayerFunctions.getCurrentPlot(player);
if ((pl != null) && pl.id.equals(plot.id)) {
@ -102,7 +103,8 @@ public class Denied extends SubCommand {
}
PlayerFunctions.sendMessage(plr, C.DENIED_ADDED);
return true;
} else if (args[0].equalsIgnoreCase("remove")) {
}
else if (args[0].equalsIgnoreCase("remove")) {
if (args[1].equalsIgnoreCase("*")) {
final UUID uuid = DBFunc.everyone;
if (!plot.denied.contains(uuid)) {
@ -132,7 +134,8 @@ public class Denied extends SubCommand {
final PlayerPlotDeniedEvent event = new PlayerPlotDeniedEvent(plr, plot, uuid, false);
Bukkit.getPluginManager().callEvent(event);
PlayerFunctions.sendMessage(plr, C.DENIED_REMOVED);
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.DENIED_NEED_ARGUMENT);
return true;
}

View File

@ -10,7 +10,6 @@ package com.intellectualcrafters.plot.commands;
import org.bukkit.entity.Player;
public class Help extends SubCommand {
public Help() {
super("help", "", "Get this help menu", "help", "he", SubCommand.CommandCategory.INFO, false);

View File

@ -21,6 +21,12 @@
package com.intellectualcrafters.plot.commands;
import java.util.UUID;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
@ -29,12 +35,6 @@ import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.UUIDHandler;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.entity.Player;
import java.util.UUID;
@SuppressWarnings("deprecation")
public class Helpers extends SubCommand {
@ -61,7 +61,8 @@ public class Helpers extends SubCommand {
UUID uuid;
if (args[1].equalsIgnoreCase("*")) {
uuid = DBFunc.everyone;
} else {
}
else {
uuid = UUIDHandler.getUUID(args[1]);
}
if (!plot.helpers.contains(uuid)) {
@ -86,13 +87,15 @@ public class Helpers extends SubCommand {
DBFunc.setHelper(plr.getWorld().getName(), plot, Bukkit.getOfflinePlayer(args[1]));
final PlayerPlotHelperEvent event = new PlayerPlotHelperEvent(plr, plot, uuid, true);
Bukkit.getPluginManager().callEvent(event);
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.ALREADY_ADDED);
return false;
}
PlayerFunctions.sendMessage(plr, C.HELPER_ADDED);
return true;
} else if (args[0].equalsIgnoreCase("remove")) {
}
else if (args[0].equalsIgnoreCase("remove")) {
if (args[1].equalsIgnoreCase("*")) {
final UUID uuid = DBFunc.everyone;
if (!plot.helpers.contains(uuid)) {
@ -123,7 +126,8 @@ public class Helpers extends SubCommand {
final PlayerPlotHelperEvent event = new PlayerPlotHelperEvent(plr, plot, uuid, false);
Bukkit.getPluginManager().callEvent(event);
PlayerFunctions.sendMessage(plr, C.HELPER_REMOVED);
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.HELPER_NEED_ARGUMENT);
return true;
}

View File

@ -21,11 +21,12 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.entity.Player;
/**
* @author Citymonstret
@ -51,14 +52,16 @@ public class Home extends SubCommand {
if (plots.length == 1) {
PlotMain.teleportPlayer(plr, plr.getLocation(), plots[0]);
return true;
} else if (plots.length > 1) {
}
else if (plots.length > 1) {
if (args.length < 1) {
args = new String[]{"1"};
args = new String[] { "1" };
}
int id = 0;
try {
id = Integer.parseInt(args[0]);
} catch (final Exception e) {
}
catch (final Exception e) {
Plot temp;
if ((temp = isAlias(args[0])) != null) {
if (temp.hasOwner()) {
@ -79,7 +82,8 @@ public class Home extends SubCommand {
}
PlotMain.teleportPlayer(plr, plr.getLocation(), plots[id - 1]);
return true;
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.NO_PLOTS);
return true;
}

View File

@ -21,19 +21,20 @@
package com.intellectualcrafters.plot.commands;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotComment;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;
public class Inbox extends SubCommand {
@ -57,13 +58,17 @@ public class Inbox extends SubCommand {
final UUID uuid = plr.getUniqueId();
if (PlotMain.hasPermission(plr, "plots.admin")) {
tier = 0;
} else if (plot.owner == uuid) {
}
else if (plot.owner == uuid) {
tier = 1;
} else if (plot.helpers.contains(uuid)) {
}
else if (plot.helpers.contains(uuid)) {
tier = 2;
} else if (plot.trusted.contains(uuid)) {
}
else if (plot.trusted.contains(uuid)) {
tier = 3;
} else {
}
else {
tier = 4;
}
@ -72,7 +77,8 @@ public class Inbox extends SubCommand {
case "admin":
if (tier <= 0) {
tier = 0;
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.NO_PERM_INBOX);
return false;
}
@ -80,7 +86,8 @@ public class Inbox extends SubCommand {
case "owner":
if (tier <= 1) {
tier = 1;
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.NO_PERM_INBOX);
return false;
}
@ -88,7 +95,8 @@ public class Inbox extends SubCommand {
case "helper":
if (tier <= 2) {
tier = 2;
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.NO_PERM_INBOX);
return false;
}
@ -96,7 +104,8 @@ public class Inbox extends SubCommand {
case "trusted":
if (tier <= 3) {
tier = 3;
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.NO_PERM_INBOX);
return false;
}
@ -104,13 +113,14 @@ public class Inbox extends SubCommand {
case "everyone":
if (tier <= 4) {
tier = 4;
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.NO_PERM_INBOX);
return false;
}
break;
case "default":
PlayerFunctions.sendMessage(plr, C.INVALID_INBOX, Arrays.copyOfRange(new String[]{"admin", "owner", "helper", "trusted", "everyone"}, tier, 4));
PlayerFunctions.sendMessage(plr, C.INVALID_INBOX, Arrays.copyOfRange(new String[] { "admin", "owner", "helper", "trusted", "everyone" }, tier, 4));
return false;
}
}
@ -141,7 +151,8 @@ public class Inbox extends SubCommand {
plot.settings.removeComment(comment);
PlayerFunctions.sendMessage(plr, C.COMMENT_REMOVED, "1 comment");
return;
} catch (final Exception e) {
}
catch (final Exception e) {
PlayerFunctions.sendMessage(plr, "&cInvalid index:\n/plot inbox [tier] [clear][:#]");
return;
}
@ -151,7 +162,8 @@ public class Inbox extends SubCommand {
}
plot.settings.removeComments(comments);
PlayerFunctions.sendMessage(plr, C.COMMENT_REMOVED, "all comments in that category");
} else {
}
else {
final List<String> recipients = Arrays.asList("A", "O", "H", "T", "E");
int count = 1;
final StringBuilder message = new StringBuilder();

View File

@ -21,6 +21,16 @@
package com.intellectualcrafters.plot.commands;
import java.util.ArrayList;
import java.util.UUID;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.block.Biome;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
@ -31,20 +41,11 @@ import com.intellectualcrafters.plot.object.PlotWorld;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.UUIDHandler;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.block.Biome;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.UUID;
/**
* @author Citymonstret
*/
@SuppressWarnings({"unused", "deprecated", "javadoc"})
@SuppressWarnings({ "unused", "deprecated", "javadoc" })
public class Info extends SubCommand {
public Info() {
@ -62,7 +63,8 @@ public class Info extends SubCommand {
return false;
}
plot = PlayerFunctions.getCurrentPlot(player);
} else {
}
else {
if (args.length < 2) {
PlayerFunctions.sendMessage(null, C.INFO_SYNTAX_CONSOLE);
return false;
@ -82,17 +84,19 @@ public class Info extends SubCommand {
}
world = Bukkit.getWorld(args[0]);
if (args.length == 3) {
args = new String[]{args[2]};
} else {
args = new String[] { args[2] };
}
else {
args = new String[0];
}
} catch (final Exception e) {
}
catch (final Exception e) {
PlayerFunctions.sendMessage(player, C.INFO_SYNTAX_CONSOLE);
return false;
}
}
if (args.length == 1 && args[0].equalsIgnoreCase("inv")) {
if ((args.length == 1) && args[0].equalsIgnoreCase("inv")) {
new InfoInventory(plot, player).build().display();
return true;
}
@ -103,8 +107,8 @@ public class Info extends SubCommand {
// Wildcard player {added}
{
containsEveryone = plot.helpers != null && plot.helpers.contains(DBFunc.everyone);
trustedEveryone = plot.trusted != null && plot.trusted.contains(DBFunc.everyone);
containsEveryone = (plot.helpers != null) && plot.helpers.contains(DBFunc.everyone);
trustedEveryone = (plot.trusted != null) && plot.trusted.contains(DBFunc.everyone);
}
// Unclaimed?
@ -175,7 +179,7 @@ public class Info extends SubCommand {
final String denied = getPlayerList(plot.denied);
final String rating = String.format("%.1f", DBFunc.getRatings(plot));
final String flags = "&6" + (StringUtils.join(plot.settings.getFlags(), "").length() > 0 ? StringUtils.join(plot.settings.getFlags(), "&7, &6") : "none");
final boolean build = player == null || plot.hasRights(player);
final boolean build = (player == null) || plot.hasRights(player);
String owner = "none";
if (plot.owner != null) {
@ -211,7 +215,8 @@ public class Info extends SubCommand {
for (int x = 0; x < l.size(); x++) {
if ((x + 1) == l.size()) {
list.append(c.replace("%user%", getPlayerName(l.get(x))).replace(",", ""));
} else {
}
else {
list.append(c.replace("%user%", getPlayerName(l.get(x))));
}
}

View File

@ -21,6 +21,8 @@
package com.intellectualcrafters.plot.commands;
import java.util.ArrayList;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Material;
@ -28,8 +30,6 @@ import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import java.util.ArrayList;
public class Inventory extends SubCommand {
public Inventory() {

View File

@ -21,14 +21,15 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
@SuppressWarnings({"unused", "deprecation", "javadoc"})
@SuppressWarnings({ "unused", "deprecation", "javadoc" })
public class Kick extends SubCommand {
public Kick() {

View File

@ -21,10 +21,10 @@
package com.intellectualcrafters.plot.commands;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.StringComparison;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
@ -32,9 +32,10 @@ import org.bukkit.command.CommandSender;
import org.bukkit.command.TabCompleter;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.StringComparison;
/**
* PlotMain command class
@ -46,51 +47,9 @@ public class MainCommand implements CommandExecutor, TabCompleter {
/**
* Main Permission Node
*/
public static final String
MAIN_PERMISSION = "plots.use";
public static final String MAIN_PERMISSION = "plots.use";
private final static SubCommand[] _subCommands =
new SubCommand[]{
new Ban(),
new Unban(),
new OP(),
new DEOP(),
new Claim(),
new Paste(),
new Copy(),
new Clipboard(),
new Auto(),
new Home(),
new Visit(),
new TP(),
new Set(),
new Clear(),
new Delete(),
new SetOwner(),
new Denied(),
new Helpers(),
new Trusted(),
new Info(),
new list(),
new Help(),
new Debug(),
new Schematic(),
new plugin(),
new Inventory(),
new Purge(),
new Reload(),
new Merge(),
new Unlink(),
new Kick(),
new Setup(),
new Rate(),
new DebugClaimTest(),
new Inbox(),
new Comment(),
new Database(),
new Unclaim(),
new Swap(),
new MusicSubcommand()};
private final static SubCommand[] _subCommands = new SubCommand[] { new Ban(), new Unban(), new OP(), new DEOP(), new Claim(), new Paste(), new Copy(), new Clipboard(), new Auto(), new Home(), new Visit(), new TP(), new Set(), new Clear(), new Delete(), new SetOwner(), new Denied(), new Helpers(), new Trusted(), new Info(), new list(), new Help(), new Debug(), new Schematic(), new plugin(), new Inventory(), new Purge(), new Reload(), new Merge(), new Unlink(), new Kick(), new Setup(), new Rate(), new DebugClaimTest(), new Inbox(), new Comment(), new Database(), new Unclaim(), new Swap(), new MusicSubcommand() };
public final static ArrayList<SubCommand> subCommands = new ArrayList<SubCommand>() {
{
@ -131,13 +90,7 @@ public class MainCommand implements CommandExecutor, TabCompleter {
help.add(C.HELP_HEADER.s());
// HELP_CATEGORY("&cCategory: &6%category%&c, Page: %current%&c/&6%max%&c, Displaying: &6%dis%&c/&6%total%"),
help.add(C.HELP_CATEGORY.s()
.replace("%category%", category.toString())
.replace("%current%", "" + (page + 1))
.replace("%max%", "" + (totalPages + 1))
.replace("%dis%", "" + (commands.size() % perPage))
.replace("%total%", "" + commands.size())
);
help.add(C.HELP_CATEGORY.s().replace("%category%", category.toString()).replace("%current%", "" + (page + 1)).replace("%max%", "" + (totalPages + 1)).replace("%dis%", "" + (commands.size() % perPage)).replace("%total%", "" + commands.size()));
SubCommand cmd;
@ -145,12 +98,7 @@ public class MainCommand implements CommandExecutor, TabCompleter {
for (int x = start; x < max; x++) {
cmd = commands.get(x);
String s = t(C.HELP_ITEM.s());
s = s
.replace("%alias%", cmd.alias.get(0))
.replace("%usage%", cmd.usage.contains("plot") ? cmd.usage : "/plot " + cmd.usage)
.replace("%cmd%", cmd.cmd)
.replace("%desc%", cmd.description)
;
s = s.replace("%alias%", cmd.alias.get(0)).replace("%usage%", cmd.usage.contains("plot") ? cmd.usage : "/plot " + cmd.usage).replace("%cmd%", cmd.cmd).replace("%desc%", cmd.description);
help.add(s);
}
if (help.size() < 2) {
@ -167,8 +115,9 @@ public class MainCommand implements CommandExecutor, TabCompleter {
public boolean onCommand(final CommandSender sender, final Command cmd, final String commandLabel, final String[] args) {
final Player player = (sender instanceof Player) ? (Player) sender : null;
if (!PlotMain.hasPermission(player, MAIN_PERMISSION))
if (!PlotMain.hasPermission(player, MAIN_PERMISSION)) {
return no_permission(player, MAIN_PERMISSION);
}
if ((args.length < 1) || ((args.length >= 1) && (args[0].equalsIgnoreCase("help") || args[0].equalsIgnoreCase("he")))) {
if (args.length < 2) {
@ -203,7 +152,8 @@ public class MainCommand implements CommandExecutor, TabCompleter {
String arg2;
if (args.length > 2) {
arg2 = args[2];
} else {
}
else {
arg2 = "1";
}
@ -224,8 +174,9 @@ public class MainCommand implements CommandExecutor, TabCompleter {
help.append(string).append("\n");
}
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', help.toString()));
//return PlayerFunctions.sendMessage(player, help.toString());
} else {
// return PlayerFunctions.sendMessage(player, help.toString());
}
else {
for (final SubCommand command : subCommands) {
if (command.cmd.equalsIgnoreCase(args[0]) || command.alias.contains(args[0].toLowerCase())) {
final String[] arguments = new String[args.length - 1];
@ -233,10 +184,12 @@ public class MainCommand implements CommandExecutor, TabCompleter {
if (command.permission.hasPermission(player)) {
if ((player != null) || !command.isPlayer) {
return command.execute(player, arguments);
} else {
}
else {
return !PlayerFunctions.sendMessage(null, C.IS_CONSOLE);
}
} else {
}
else {
return no_permission(player, command.permission.permission.toLowerCase());
}
}
@ -249,9 +202,10 @@ public class MainCommand implements CommandExecutor, TabCompleter {
}
/* Let's try to get a proper usage string */
String command = new StringComparison(args[0], commands).getBestMatch();
final String command = new StringComparison(args[0], commands).getBestMatch();
return PlayerFunctions.sendMessage(player, C.DID_YOU_MEAN, "/plot " + command);
//PlayerFunctions.sendMessage(player, C.DID_YOU_MEAN, new StringComparsion(args[0], commands).getBestMatch());
// PlayerFunctions.sendMessage(player, C.DID_YOU_MEAN, new
// StringComparsion(args[0], commands).getBestMatch());
}
return true;
}
@ -280,7 +234,8 @@ public class MainCommand implements CommandExecutor, TabCompleter {
if (cmd.permission.hasPermission(player)) {
if (cmd.cmd.startsWith(arg)) {
tabOptions.add(cmd.cmd);
} else if (cmd.alias.get(0).startsWith(arg)) {
}
else if (cmd.alias.get(0).startsWith(arg)) {
tabOptions.add(cmd.alias.get(0));
}
}

View File

@ -21,6 +21,15 @@
package com.intellectualcrafters.plot.commands;
import java.util.ArrayList;
import net.milkbowl.vault.economy.Economy;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.events.PlotMergeEvent;
@ -30,21 +39,14 @@ import com.intellectualcrafters.plot.object.PlotWorld;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.SetBlockFast;
import net.milkbowl.vault.economy.Economy;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Player;
import java.util.ArrayList;
/**
* @author Citymonstret
*/
public class Merge extends SubCommand {
public final static String[] values = new String[]{"north", "east", "south", "west"};
public final static String[] aliases = new String[]{"n", "e", "s", "w"};
public final static String[] values = new String[] { "north", "east", "south", "west" };
public final static String[] aliases = new String[] { "n", "e", "s", "w" };
public Merge() {
super(Command.MERGE, "Merge the plot you are standing on with another plot.", "merge", CommandCategory.ACTIONS, true);

View File

@ -21,17 +21,18 @@
package com.intellectualcrafters.plot.commands;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.listeners.PlotPlusListener;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import java.util.Arrays;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import java.util.Arrays;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.listeners.PlotPlusListener;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
public class MusicSubcommand extends SubCommand {
public MusicSubcommand() {

View File

@ -1,9 +1,10 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.entity.Player;
/**
* Created 2014-11-09 for PlotSquared
@ -17,14 +18,14 @@ public class OP extends SubCommand {
}
@Override
public boolean execute(Player plr, String... args) {
public boolean execute(final Player plr, final String... args) {
if (args.length < 1) {
return PlayerFunctions.sendMessage(plr, "&cUsage: &c" + usage);
return PlayerFunctions.sendMessage(plr, "&cUsage: &c" + this.usage);
}
if (!PlayerFunctions.isInPlot(plr)) {
return sendMessage(plr, C.NOT_IN_PLOT);
}
Plot plot = PlayerFunctions.getCurrentPlot(plr);
final Plot plot = PlayerFunctions.getCurrentPlot(plr);
if (!plot.hasRights(plr)) {
return sendMessage(plr, C.NO_PLOT_PERMS);
}

View File

@ -21,13 +21,14 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotSelection;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import org.bukkit.entity.Player;
public class Paste extends SubCommand {
@ -61,7 +62,8 @@ public class Paste extends SubCommand {
}
selection.paste(plr.getWorld(), plot);
sendMessage(plr, C.PASTED);
} else {
}
else {
sendMessage(plr, C.NO_CLIPBOARD);
return false;
}

View File

@ -21,14 +21,15 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
import com.intellectualcrafters.plot.object.PlotId;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.entity.Player;
@SuppressWarnings({"unused", "deprecated", "javadoc"})
@SuppressWarnings({ "unused", "deprecated", "javadoc" })
public class Purge extends SubCommand {
public Purge() {
@ -59,7 +60,8 @@ public class Purge extends SubCommand {
DBFunc.purge(world, id);
PlayerFunctions.sendMessage(null, "&aPurge of '" + args[0] + "' was successful!");
return true;
} catch (final Exception e) {
}
catch (final Exception e) {
PlayerFunctions.sendMessage(plr, C.NOT_VALID_PLOT_ID);
}
}
@ -75,7 +77,8 @@ public class Purge extends SubCommand {
DBFunc.purge(args[0]);
PlayerFunctions.sendMessage(plr, (C.PURGE_SUCCESS));
return true;
} else {
}
else {
PlayerFunctions.sendMessage(plr, "This is a dangerous command, if you are sure, use /plot purge {world} -o");
return false;
}

View File

@ -21,13 +21,14 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.entity.Player;
@SuppressWarnings({"unused", "deprecated", "javadoc"})
@SuppressWarnings({ "unused", "deprecated", "javadoc" })
public class Rate extends SubCommand {
/*
@ -78,17 +79,19 @@ public class Rate extends SubCommand {
boolean rated = true;
try {
DBFunc.getRatings(plot);
} catch (Exception e) {
}
catch (final Exception e) {
rated = false;
}
if (rated) {
sendMessage(plr, C.RATING_ALREADY_EXISTS, plot.getId().toString());
}
boolean success = true;
final boolean success = true;
if (success) {
sendMessage(plr, C.RATING_APPLIED, plot.getId().toString());
} else {
}
else {
sendMessage(plr, C.COMMAND_WENT_WRONG);
}
return true;

View File

@ -21,11 +21,12 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.PlotWorld;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.entity.Player;
public class Reload extends SubCommand {
@ -46,7 +47,8 @@ public class Reload extends SubCommand {
plotworld.loadDefaultConfiguration(PlotMain.config.getConfigurationSection("worlds." + pw));
}
PlotMain.BroadcastWithPerms(C.RELOADED_CONFIGS);
} catch (final Exception e) {
}
catch (final Exception e) {
PlayerFunctions.sendMessage(plr, C.RELOAD_FAILED);
}
return true;

View File

@ -21,23 +21,28 @@
package com.intellectualcrafters.plot.commands;
import com.intellectualcrafters.jnbt.CompoundTag;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.config.Settings;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotId;
import com.intellectualcrafters.plot.util.*;
import com.intellectualcrafters.plot.util.SchematicHandler.DataCollection;
import com.intellectualcrafters.plot.util.SchematicHandler.Dimension;
import java.util.Collection;
import java.util.HashMap;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
import java.util.Collection;
import java.util.HashMap;
import com.intellectualcrafters.jnbt.CompoundTag;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.config.Settings;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotId;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.SchematicHandler;
import com.intellectualcrafters.plot.util.SchematicHandler.DataCollection;
import com.intellectualcrafters.plot.util.SchematicHandler.Dimension;
import com.intellectualcrafters.plot.util.SetBlockFast;
import com.intellectualcrafters.plot.util.UUIDHandler;
public class Schematic extends SubCommand {
@ -114,7 +119,8 @@ public class Schematic extends SubCommand {
final Location loc = plr.getLocation();
x = Math.min(length2 - dem.getX(), loc.getBlockX() - bot.getBlockX());
z = Math.min(length2 - dem.getZ(), loc.getBlockZ() - bot.getBlockZ());
} else {
}
else {
x = 0;
z = 0;
}
@ -211,7 +217,7 @@ public class Schematic extends SubCommand {
final Plugin plugin = Bukkit.getServer().getPluginManager().getPlugin("PlotSquared");
Collection<Plot> values = plotmap.values();
final Collection<Plot> values = plotmap.values();
this.plots = values.toArray(new Plot[values.size()]);
this.running = true;
this.counter = 0;
@ -231,7 +237,8 @@ public class Schematic extends SubCommand {
final String owner = o == null ? "unknown" : o;
if (sch == null) {
PlayerFunctions.sendMessage(null, "&7 - Skipped plot &c" + plot.id);
} else {
}
else {
Bukkit.getScheduler().runTaskAsynchronously(Bukkit.getServer().getPluginManager().getPlugin("PlotSquared"), new Runnable() {
@Override
public void run() {
@ -239,7 +246,8 @@ public class Schematic extends SubCommand {
final boolean result = SchematicHandler.save(sch, Settings.SCHEMATIC_SAVE_PATH + "/" + plot.id.x + ";" + plot.id.y + "," + worldname + "," + owner + ".schematic");
if (!result) {
PlayerFunctions.sendMessage(null, "&7 - Failed to save &c" + plot.id);
} else {
}
else {
PlayerFunctions.sendMessage(null, "&7 - &aExport success: " + plot.id);
}
}
@ -273,7 +281,8 @@ public class Schematic extends SubCommand {
}
p2 = myplot;
world = plr.getWorld().getName();
} else {
}
else {
if (args.length == 3) {
try {
world = args[0];
@ -284,11 +293,13 @@ public class Schematic extends SubCommand {
return false;
}
p2 = PlotMain.getPlots(world).get(i);
} catch (final Exception e) {
}
catch (final Exception e) {
PlayerFunctions.sendMessage(null, "&cInvalid world or id. Use &7/plots sch save <world> <id>");
return false;
}
} else {
}
else {
PlayerFunctions.sendMessage(null, "&cInvalid world or id. Use &7/plots sch save <world> <id>");
return false;
}
@ -296,7 +307,7 @@ public class Schematic extends SubCommand {
final Plugin plugin2 = Bukkit.getServer().getPluginManager().getPlugin("PlotSquared");
this.plots = new Plot[]{p2};
this.plots = new Plot[] { p2 };
this.running = true;
this.counter = 0;
@ -315,7 +326,8 @@ public class Schematic extends SubCommand {
final String owner = o == null ? "unknown" : o;
if (sch == null) {
PlayerFunctions.sendMessage(plr, "&7 - Skipped plot &c" + plot.id);
} else {
}
else {
Bukkit.getScheduler().runTaskAsynchronously(Bukkit.getServer().getPluginManager().getPlugin("PlotSquared"), new Runnable() {
@Override
public void run() {
@ -323,7 +335,8 @@ public class Schematic extends SubCommand {
final boolean result = SchematicHandler.save(sch, Settings.SCHEMATIC_SAVE_PATH + "/" + plot.id.x + ";" + plot.id.y + "," + world + "," + owner.trim() + ".schematic");
if (!result) {
PlayerFunctions.sendMessage(plr, "&7 - Failed to save &c" + plot.id);
} else {
}
else {
PlayerFunctions.sendMessage(plr, "&7 - &aExport success: " + plot.id);
}
}

View File

@ -21,6 +21,17 @@
package com.intellectualcrafters.plot.commands;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.block.Biome;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
@ -37,24 +48,14 @@ import com.intellectualcrafters.plot.object.PlotWorld;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.StringComparison;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.block.Biome;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* @author Citymonstret
*/
public class Set extends SubCommand {
public final static String[] values = new String[]{"biome", "wall", "wall_filling", "floor", "alias", "home", "flag"};
public final static String[] aliases = new String[]{"b", "w", "wf", "f", "a", "h", "fl"};
public final static String[] values = new String[] { "biome", "wall", "wall_filling", "floor", "alias", "home", "flag" };
public final static String[] aliases = new String[] { "b", "w", "wf", "f", "a", "h", "fl" };
public Set() {
super(Command.SET, "Set a plot value", "set {arg} {value...}", CommandCategory.ACTIONS, true);
@ -99,7 +100,8 @@ public class Set extends SubCommand {
if (PlotMain.worldGuardListener != null) {
if (message.equals("")) {
message = StringUtils.join(PlotMain.worldGuardListener.str_flags, "&c, &6");
} else {
}
else {
message += "," + StringUtils.join(PlotMain.worldGuardListener.str_flags, "&c, &6");
}
}
@ -111,7 +113,8 @@ public class Set extends SubCommand {
try {
af = FlagManager.getFlag(args[1].toLowerCase());
} catch (final Exception e) {
}
catch (final Exception e) {
af = new AbstractFlag(args[1].toLowerCase());
}
@ -175,12 +178,13 @@ public class Set extends SubCommand {
return false;
}
plot.settings.addFlag(flag);
java.util.Set<Flag> flags = plot.settings.getFlags();
final java.util.Set<Flag> flags = plot.settings.getFlags();
DBFunc.setFlags(plr.getWorld().getName(), plot, flags.toArray(new Flag[flags.size()]));
PlayerFunctions.sendMessage(plr, C.FLAG_ADDED);
PlotListener.plotEntry(plr, plot);
return true;
} catch (final Exception e) {
}
catch (final Exception e) {
PlayerFunctions.sendMessage(plr, "&c" + e.getMessage());
return false;
}
@ -271,7 +275,8 @@ public class Set extends SubCommand {
Material material;
try {
material = getMaterial(args[1], PlotWorld.BLOCKS);
} catch (NullPointerException e) {
}
catch (final NullPointerException e) {
material = null;
}
/*
@ -291,7 +296,8 @@ public class Set extends SubCommand {
if (args.length > 2) {
try {
data = (byte) Integer.parseInt(args[2]);
} catch (final Exception e) {
}
catch (final Exception e) {
PlayerFunctions.sendMessage(plr, C.NOT_VALID_DATA);
return true;
}
@ -346,11 +352,13 @@ public class Set extends SubCommand {
if (ss.length == 1) {
blocks[index] = new PlotBlock((short) m.getId(), (byte) 0);
} else {
}
else {
byte b;
try {
b = (byte) Integer.parseInt(ss[1]);
} catch (final Exception e) {
}
catch (final Exception e) {
PlayerFunctions.sendMessage(plr, C.NOT_VALID_DATA);
return true;
}
@ -394,7 +402,8 @@ public class Set extends SubCommand {
if (args.length > 2) {
try {
data = (byte) Integer.parseInt(args[2]);
} catch (final Exception e) {
}
catch (final Exception e) {
PlayerFunctions.sendMessage(plr, C.NOT_VALID_DATA);
return true;
}
@ -406,7 +415,8 @@ public class Set extends SubCommand {
AbstractFlag af;
try {
af = new AbstractFlag(args[0].toLowerCase());
} catch (final Exception e) {
}
catch (final Exception e) {
af = new AbstractFlag("");
}
if (FlagManager.getFlags().contains(af)) {

View File

@ -21,6 +21,12 @@
package com.intellectualcrafters.plot.commands;
import java.util.ArrayList;
import java.util.UUID;
import org.bukkit.World;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
@ -30,12 +36,6 @@ import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.UUIDHandler;
import org.bukkit.World;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.UUID;
@SuppressWarnings("deprecation")
public class SetOwner extends SubCommand {
@ -65,14 +65,14 @@ public class SetOwner extends SubCommand {
return true;
}
World world = plr.getWorld();
PlotId bot = PlayerFunctions.getBottomPlot(world, plot).id;
PlotId top = PlayerFunctions.getTopPlot(world, plot).id;
final World world = plr.getWorld();
final PlotId bot = PlayerFunctions.getBottomPlot(world, plot).id;
final PlotId top = PlayerFunctions.getTopPlot(world, plot).id;
ArrayList<PlotId> plots = PlayerFunctions.getPlotSelectionIds(world, bot, top);
final ArrayList<PlotId> plots = PlayerFunctions.getPlotSelectionIds(world, bot, top);
for (PlotId id : plots) {
Plot current = PlotMain.getPlots(world).get(id);
for (final PlotId id : plots) {
final Plot current = PlotMain.getPlots(world).get(id);
current.owner = getUUID(args[0]);
PlotMain.updatePlot(current);
DBFunc.setOwner(current, current.owner);

View File

@ -21,13 +21,11 @@
package com.intellectualcrafters.plot.commands;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.config.ConfigurationNode;
import com.intellectualcrafters.plot.generator.DefaultPlotWorld;
import com.intellectualcrafters.plot.object.PlotGenerator;
import com.intellectualcrafters.plot.object.PlotWorld;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.World;
@ -37,10 +35,13 @@ import org.bukkit.event.Listener;
import org.bukkit.generator.ChunkGenerator;
import org.bukkit.plugin.Plugin;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.config.ConfigurationNode;
import com.intellectualcrafters.plot.generator.DefaultPlotWorld;
import com.intellectualcrafters.plot.object.PlotGenerator;
import com.intellectualcrafters.plot.object.PlotWorld;
import com.intellectualcrafters.plot.util.PlayerFunctions;
/**
* Created 2014-09-26 for PlotSquared
@ -61,7 +62,8 @@ public class Setup extends SubCommand implements Listener {
if (plr == null) {
plrname = "";
} else {
}
else {
plrname = plr.getName();
}
@ -75,17 +77,20 @@ public class Setup extends SubCommand implements Listener {
}
try {
PlotMain.config.save(PlotMain.configFile);
} catch (final IOException e) {
}
catch (final IOException e) {
e.printStackTrace();
}
// Creating the worlds
if ((Bukkit.getPluginManager().getPlugin("Multiverse-Core") != null) && Bukkit.getPluginManager().getPlugin("Multiverse-Core").isEnabled()) {
Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), "mv create " + world + " normal -g " + object.plugin);
} else {
}
else {
if ((Bukkit.getPluginManager().getPlugin("MultiWorld") != null) && Bukkit.getPluginManager().getPlugin("MultiWorld").isEnabled()) {
Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), "mw create " + world + " plugin:" + object.plugin);
} else {
}
else {
for (final Plugin plugin : Bukkit.getPluginManager().getPlugins()) {
if (plugin.isEnabled()) {
if (plugin.getDefaultWorldGenerator("world", "") != null) {
@ -115,7 +120,8 @@ public class Setup extends SubCommand implements Listener {
if (args.length < 1) {
sendMessage(plr, C.SETUP_STEP, object.current + 1 + "", step.getDescription(), step.getType().getType(), step.getDefaultValue() + "");
return true;
} else {
}
else {
if (args[0].equalsIgnoreCase("cancel")) {
setupMap.remove(plrname);
PlayerFunctions.sendMessage(plr, "&cCancelled setup.");
@ -127,7 +133,8 @@ public class Setup extends SubCommand implements Listener {
step = object.step[object.current];
sendMessage(plr, C.SETUP_STEP, object.current + 1 + "", step.getDescription(), step.getType().getType(), step.getDefaultValue() + "");
return true;
} else {
}
else {
sendMessage(plr, C.SETUP_STEP, object.current + 1 + "", step.getDescription(), step.getType().getType(), step.getDefaultValue() + "");
return true;
}
@ -144,13 +151,15 @@ public class Setup extends SubCommand implements Listener {
step = object.step[object.current];
sendMessage(plr, C.SETUP_STEP, object.current + 1 + "", step.getDescription(), step.getType().getType(), step.getDefaultValue() + "");
return true;
} else {
}
else {
sendMessage(plr, C.SETUP_INVALID_ARG, args[0], step.getConstant());
sendMessage(plr, C.SETUP_STEP, object.current + 1 + "", step.getDescription(), step.getType().getType(), step.getDefaultValue() + "");
return true;
}
}
} else {
}
else {
if (args.length < 1) {
sendMessage(plr, C.SETUP_MISSING_WORLD);
return true;
@ -193,7 +202,8 @@ public class Setup extends SubCommand implements Listener {
PlotWorld plotworld;
if (generator instanceof PlotGenerator) {
plotworld = ((PlotGenerator) generator).getNewPlotWorld(world);
} else {
}
else {
plotworld = new DefaultPlotWorld(world);
}

View File

@ -21,20 +21,20 @@
package com.intellectualcrafters.plot.commands;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import java.util.ArrayList;
import java.util.Arrays;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.Arrays;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.util.PlayerFunctions;
/**
* SubCommand class
*
* @author Citymonstret
*/
@SuppressWarnings({"deprecation", "unused"})
@SuppressWarnings({ "deprecation", "unused" })
public abstract class SubCommand {
/**
@ -67,12 +67,18 @@ public abstract class SubCommand {
public final boolean isPlayer;
/**
* @param cmd Command /plot {cmd} <-- That!
* @param permission Permission Node
* @param description Simple description
* @param usage Usage description: /plot command {args...}
* @param alias Command alias
* @param category CommandCategory. Pick whichever is closest to what you want.
* @param cmd
* Command /plot {cmd} <-- That!
* @param permission
* Permission Node
* @param description
* Simple description
* @param usage
* Usage description: /plot command {args...}
* @param alias
* Command alias
* @param category
* CommandCategory. Pick whichever is closest to what you want.
*/
public SubCommand(final String cmd, final String permission, final String description, final String usage, final String alias, final CommandCategory category, final boolean isPlayer) {
this.cmd = cmd;
@ -86,12 +92,18 @@ public abstract class SubCommand {
}
/**
* @param cmd Command /plot {cmd} <-- That!
* @param permission Permission Node
* @param description Simple description
* @param usage Usage description: /plot command {args...}
* @param aliases Command aliases
* @param category CommandCategory. Pick whichever is closest to what you want.
* @param cmd
* Command /plot {cmd} <-- That!
* @param permission
* Permission Node
* @param description
* Simple description
* @param usage
* Usage description: /plot command {args...}
* @param aliases
* Command aliases
* @param category
* CommandCategory. Pick whichever is closest to what you want.
*/
public SubCommand(final String cmd, final String permission, final String description, final String usage, final CommandCategory category, final boolean isPlayer, final String... aliases) {
this.cmd = cmd;
@ -105,10 +117,14 @@ public abstract class SubCommand {
}
/**
* @param command Command /plot {cmd} <-- That!
* @param description Simple description
* @param usage Usage description: /plot command {args...}
* @param category CommandCategory. Pick whichever closests to what you want.
* @param command
* Command /plot {cmd} <-- That!
* @param description
* Simple description
* @param usage
* Usage description: /plot command {args...}
* @param category
* CommandCategory. Pick whichever closests to what you want.
*/
public SubCommand(final Command command, final String description, final String usage, final CommandCategory category, final boolean isPlayer) {
this.cmd = command.getCommand();
@ -124,8 +140,10 @@ public abstract class SubCommand {
/**
* Execute.
*
* @param plr executor
* @param args arguments
* @param plr
* executor
* @param args
* arguments
* @return true on success, false on failure
*/
public abstract boolean execute(final Player plr, final String... args);
@ -133,7 +151,8 @@ public abstract class SubCommand {
/**
* Execute the command as console
*
* @param args Arguments
* @param args
* Arguments
*/
public void executeConsole(final String... args) {
this.execute(null, args);
@ -142,10 +161,14 @@ public abstract class SubCommand {
/**
* Send a message
*
* @param plr Player who will receive the mssage
* @param c Caption
* @param args Arguments (%s's)
* @see com.intellectualcrafters.plot.util.PlayerFunctions#sendMessage(org.bukkit.entity.Player, com.intellectualcrafters.plot.config.C, String...)
* @param plr
* Player who will receive the mssage
* @param c
* Caption
* @param args
* Arguments (%s's)
* @see com.intellectualcrafters.plot.util.PlayerFunctions#sendMessage(org.bukkit.entity.Player,
* com.intellectualcrafters.plot.config.C, String...)
*/
public boolean sendMessage(final Player plr, final C c, final String... args) {
PlayerFunctions.sendMessage(plr, c, args);
@ -198,7 +221,8 @@ public abstract class SubCommand {
/**
* Constructor
*
* @param name readable name
* @param name
* readable name
*/
CommandCategory(final String name) {
this.name = name;

View File

@ -21,6 +21,9 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.World;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
@ -29,8 +32,6 @@ import com.intellectualcrafters.plot.object.PlotSelection;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.SetBlockFast;
import org.bukkit.World;
import org.bukkit.entity.Player;
/**
* Created 2014-08-01 for PlotSquared
@ -73,7 +74,8 @@ public class Swap extends SubCommand {
PlayerFunctions.sendMessage(plr, C.NO_PERM_MERGE, plotid.toString());
return false;
}
} catch (final Exception e) {
}
catch (final Exception e) {
PlayerFunctions.sendMessage(plr, C.NOT_VALID_PLOT_ID);
PlayerFunctions.sendMessage(plr, C.SWAP_SYNTAX);
return false;

View File

@ -21,17 +21,17 @@
package com.intellectualcrafters.plot.commands;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotId;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.PlotHelper;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Player;
/**
* @author Citymonstret
@ -70,7 +70,8 @@ public class TP extends SubCommand {
plotid = new PlotId(Integer.parseInt(id.split(";")[0]), Integer.parseInt(id.split(";")[1]));
PlotMain.teleportPlayer(plr, plr.getLocation(), PlotHelper.getPlot(world, plotid));
return true;
} catch (final Exception e) {
}
catch (final Exception e) {
PlayerFunctions.sendMessage(plr, C.NOT_VALID_PLOT_ID);
}
return false;
@ -88,10 +89,8 @@ public class TP extends SubCommand {
@SuppressWarnings("deprecation")
final Player player = Bukkit.getPlayer(a);
if (player != null) {
final java.util.Set<Plot> plotMainPlots =
PlotMain.getPlots(world, player);
final Plot[] plots =
plotMainPlots.toArray(new Plot[plotMainPlots.size()]);
final java.util.Set<Plot> plotMainPlots = PlotMain.getPlots(world, player);
final Plot[] plots = plotMainPlots.toArray(new Plot[plotMainPlots.size()]);
if (plots.length > index) {
return plots[index];
}

View File

@ -21,6 +21,12 @@
package com.intellectualcrafters.plot.commands;
import java.util.UUID;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
@ -29,12 +35,6 @@ import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.UUIDHandler;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.entity.Player;
import java.util.UUID;
@SuppressWarnings("deprecation")
public class Trusted extends SubCommand {
@ -62,7 +62,8 @@ public class Trusted extends SubCommand {
if (args[1].equalsIgnoreCase("*")) {
uuid = DBFunc.everyone;
} else {
}
else {
uuid = UUIDHandler.getUUID(args[1]);
}
if (!plot.trusted.contains(uuid)) {
@ -87,13 +88,15 @@ public class Trusted extends SubCommand {
DBFunc.setTrusted(plr.getWorld().getName(), plot, Bukkit.getOfflinePlayer(args[1]));
final PlayerPlotTrustedEvent event = new PlayerPlotTrustedEvent(plr, plot, uuid, true);
Bukkit.getPluginManager().callEvent(event);
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.ALREADY_ADDED);
return false;
}
PlayerFunctions.sendMessage(plr, C.TRUSTED_ADDED);
return true;
} else if (args[0].equalsIgnoreCase("remove")) {
}
else if (args[0].equalsIgnoreCase("remove")) {
if (args[1].equalsIgnoreCase("*")) {
final UUID uuid = DBFunc.everyone;
if (!plot.trusted.contains(uuid)) {
@ -124,7 +127,8 @@ public class Trusted extends SubCommand {
final PlayerPlotTrustedEvent event = new PlayerPlotTrustedEvent(plr, plot, uuid, false);
Bukkit.getPluginManager().callEvent(event);
PlayerFunctions.sendMessage(plr, C.TRUSTED_REMOVED);
} else {
}
else {
PlayerFunctions.sendMessage(plr, C.TRUSTED_NEED_ARGUMENT);
return true;
}

View File

@ -1,9 +1,10 @@
package com.intellectualcrafters.plot.commands;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.entity.Player;
/**
* Created 2014-11-09 for PlotSquared
@ -17,14 +18,14 @@ public class Unban extends SubCommand {
}
@Override
public boolean execute(Player plr, String... args) {
public boolean execute(final Player plr, final String... args) {
if (args.length < 1) {
return PlayerFunctions.sendMessage(plr, "&cUsage: &c" + usage);
return PlayerFunctions.sendMessage(plr, "&cUsage: &c" + this.usage);
}
if (!PlayerFunctions.isInPlot(plr)) {
return sendMessage(plr, C.NOT_IN_PLOT);
}
Plot plot = PlayerFunctions.getCurrentPlot(plr);
final Plot plot = PlayerFunctions.getCurrentPlot(plr);
if (!plot.hasRights(plr)) {
return sendMessage(plr, C.NO_PLOT_PERMS);
}

View File

@ -21,14 +21,16 @@
package com.intellectualcrafters.plot.commands;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotWorld;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.entity.Player;
public class Unclaim extends SubCommand {
@ -64,7 +66,8 @@ public class Unclaim extends SubCommand {
if ((Math.abs(plot.id.x) <= Math.abs(Auto.lastPlot.x)) && (Math.abs(plot.id.y) <= Math.abs(Auto.lastPlot.y))) {
Auto.lastPlot = plot.id;
}
} else {
}
else {
PlayerFunctions.sendMessage(plr, "Plot removal has been denied.");
}
return true;

View File

@ -21,6 +21,12 @@
package com.intellectualcrafters.plot.commands;
import java.util.ArrayList;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.database.DBFunc;
@ -34,12 +40,6 @@ import com.intellectualcrafters.plot.util.PlotHelper;
import com.intellectualcrafters.plot.util.SetBlockFast;
import com.intellectualcrafters.plot.util.UUIDHandler;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Player;
import java.util.ArrayList;
/**
* Created 2014-08-01 for PlotSquared
*
@ -86,7 +86,9 @@ public class Unlink extends SubCommand {
for (final PlotId id : ids) {
final Plot myplot = PlotMain.getPlots(world).get(id);
if (plot == null) continue;
if (plot == null) {
continue;
}
if (plot.helpers != null) {
myplot.helpers = plot.helpers;
@ -95,7 +97,7 @@ public class Unlink extends SubCommand {
myplot.denied = plot.denied;
}
myplot.deny_entry = plot.deny_entry;
myplot.settings.setMerged(new boolean[]{false, false, false, false});
myplot.settings.setMerged(new boolean[] { false, false, false, false });
DBFunc.setMerged(world.getName(), myplot, myplot.settings.getMerged());
}
@ -124,12 +126,13 @@ public class Unlink extends SubCommand {
if (PlotHelper.canSetFast) {
SetBlockFast.update(plr);
}
} catch (final Exception e) {
}
catch (final Exception e) {
// execute(final Player plr, final String... args) {
try {
PlotMain.sendConsoleSenderMessage(
"Error on: " + getClass().getMethod("execute", Player.class, String[].class).toGenericString() + ":119, when trying to use \"SetBlockFast#update\"");
} catch (Exception ex) {
PlotMain.sendConsoleSenderMessage("Error on: " + getClass().getMethod("execute", Player.class, String[].class).toGenericString() + ":119, when trying to use \"SetBlockFast#update\"");
}
catch (final Exception ex) {
ex.printStackTrace();
}
}

View File

@ -21,15 +21,16 @@
package com.intellectualcrafters.plot.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.util.UUIDHandler;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
public class Visit extends SubCommand {
public Visit() {
@ -67,7 +68,8 @@ public class Visit extends SubCommand {
int i;
try {
i = Integer.parseInt(args[1]);
} catch (final Exception e) {
}
catch (final Exception e) {
return sendMessage(plr, C.NOT_VALID_NUMBER);
}
if ((i < 0) || (i >= plots.size())) {

View File

@ -21,6 +21,12 @@
package com.intellectualcrafters.plot.commands;
import java.util.HashMap;
import java.util.UUID;
import org.bukkit.ChatColor;
import org.bukkit.entity.Player;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.C;
import com.intellectualcrafters.plot.object.Plot;
@ -28,11 +34,6 @@ import com.intellectualcrafters.plot.object.PlotId;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import com.intellectualcrafters.plot.util.StringComparison;
import com.intellectualcrafters.plot.util.UUIDHandler;
import org.bukkit.ChatColor;
import org.bukkit.entity.Player;
import java.util.HashMap;
import java.util.UUID;
/**
* @author Citymonstret
@ -60,9 +61,10 @@ public class list extends SubCommand {
final StringBuilder builder = new StringBuilder();
builder.append(C.SUBCOMMAND_SET_OPTIONS_HEADER.s());
if (plr != null) {
builder.append(getArgumentList(new String[]{"mine", "shared", "world", "all"}));
} else {
builder.append(getArgumentList(new String[]{"all"}));
builder.append(getArgumentList(new String[] { "mine", "shared", "world", "all" }));
}
else {
builder.append(getArgumentList(new String[] { "all" }));
}
PlayerFunctions.sendMessage(plr, builder.toString());
return true;
@ -82,7 +84,8 @@ public class list extends SubCommand {
string.append(C.PLOT_LIST_FOOTER.s().replaceAll("%word%", "You have").replaceAll("%num%", idx + "").replaceAll("%plot%", idx == 1 ? "plot" : "plots"));
PlayerFunctions.sendMessage(plr, string.toString());
return true;
} else if (args[0].equalsIgnoreCase("shared") && (plr != null)) {
}
else if (args[0].equalsIgnoreCase("shared") && (plr != null)) {
final StringBuilder string = new StringBuilder();
string.append(C.PLOT_LIST_HEADER.s().replaceAll("%word%", "all")).append("\n");
for (final Plot p : PlotMain.getPlotsSorted()) {
@ -93,7 +96,8 @@ public class list extends SubCommand {
string.append(C.PLOT_LIST_FOOTER.s().replaceAll("%word%", "There are").replaceAll("%num%", PlotMain.getPlotsSorted().size() + "").replaceAll("%plot%", PlotMain.getPlotsSorted().size() == 1 ? "plot" : "plots"));
PlayerFunctions.sendMessage(plr, string.toString());
return true;
} else if (args[0].equalsIgnoreCase("all")) {
}
else if (args[0].equalsIgnoreCase("all")) {
// Current page
int page = 0;
@ -105,7 +109,8 @@ public class list extends SubCommand {
if (page < 0) {
page = 0;
}
} catch (final Exception e) {
}
catch (final Exception e) {
page = 0;
}
}
@ -140,7 +145,8 @@ public class list extends SubCommand {
string.append(C.PLOT_LIST_FOOTER.s().replaceAll("%word%", "There is").replaceAll("%num%", PlotMain.getPlotsSorted().size() + "").replaceAll("%plot%", PlotMain.getPlotsSorted().size() == 1 ? "plot" : "plots"));
PlayerFunctions.sendMessage(plr, string.toString());
return true;
} else if (args[0].equalsIgnoreCase("world") && (plr != null)) {
}
else if (args[0].equalsIgnoreCase("world") && (plr != null)) {
final StringBuilder string = new StringBuilder();
string.append(C.PLOT_LIST_HEADER.s().replaceAll("%word%", "all")).append("\n");
final HashMap<PlotId, Plot> plots = PlotMain.getPlots(plr.getWorld());
@ -150,9 +156,10 @@ public class list extends SubCommand {
string.append(C.PLOT_LIST_FOOTER.s().replaceAll("%word%", "There is").replaceAll("%num%", plots.values().size() + "").replaceAll("%plot%", plots.values().size() == 1 ? "plot" : "plots"));
PlayerFunctions.sendMessage(plr, string.toString());
return true;
} else {
}
else {
// execute(plr);
sendMessage(plr, C.DID_YOU_MEAN, new StringComparison(args[0], new String[]{"mine", "shared", "world", "all"}).getBestMatch());
sendMessage(plr, C.DID_YOU_MEAN, new StringComparison(args[0], new String[] { "mine", "shared", "world", "all" }).getBestMatch());
return false;
}
}

View File

@ -21,18 +21,19 @@
package com.intellectualcrafters.plot.commands;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.util.PlayerFunctions;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.util.PlayerFunctions;
public class plugin extends SubCommand {
public static String downloads, version;
@ -47,7 +48,8 @@ public class plugin extends SubCommand {
public void run() {
try {
downloads = convertToNumericString(getInfo("https://intellectualsites.com/spigot_api.php?method=downloads&url=http://www.spigotmc.org/resources/plotsquared.1177/"), false);
} catch (final Exception e) {
}
catch (final Exception e) {
downloads = "unknown";
}
}
@ -57,7 +59,8 @@ public class plugin extends SubCommand {
public void run() {
try {
version = convertToNumericString(getInfo("https://intellectualsites.com/spigot_api.php?method=version&resource=1177"), true);
} catch (final Exception e) {
}
catch (final Exception e) {
// Let's just ignore this, most likely error 500...
version = "unknown";
}
@ -70,7 +73,8 @@ public class plugin extends SubCommand {
for (final char c : str.toCharArray()) {
if (Character.isDigit(c)) {
builder.append(c);
} else if (dividers && ((c == ',') || (c == '.') || (c == '-') || (c == '_'))) {
}
else if (dividers && ((c == ',') || (c == '.') || (c == '-') || (c == '_'))) {
builder.append(c);
}
}

View File

@ -21,11 +21,16 @@
package com.intellectualcrafters.plot.config;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualsites.translation.*;
import com.intellectualsites.translation.bukkit.BukkitTranslation;
import org.bukkit.ChatColor;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualsites.translation.TranslationFile;
import com.intellectualsites.translation.TranslationLanguage;
import com.intellectualsites.translation.TranslationManager;
import com.intellectualsites.translation.TranslationObject;
import com.intellectualsites.translation.YamlTranslationFile;
import com.intellectualsites.translation.bukkit.BukkitTranslation;
/**
* Captions class.
*
@ -240,30 +245,21 @@ public enum C {
* Info
*/
PLOT_INFO_UNCLAIMED("&cPlot &6%s&c is not yet claimed"),
/*PLOT_INFO("" +
"&6ID&7: &a%id%&7\n" +
"&6Alias&7: &a%alias%\n" +
"&6Owner&7: &a%owner%\n" +
"&6Helpers&7: &a%helpers%\n" +
"&6Trusted&7: &a%trusted%\n" +
"&6Denied&7: &a%denied%\n" +
"&6Flags&7: &a%flags%\n" +
"&6Biome&7: &a%biome%\n" +
"&6Rating&7: &a%rating%&7/&a10\n" +
"&6Can build&7: &a%build%"
),*/
PLOT_INFO(
"&cID: &6%id%&c\n" +
"&cAlias: &6%alias%&c\n" +
"&cOwner: &6%owner%&c\n" +
"&cBiome: &6%biome%&c\n" +
"&cCan Build: &6%build%&c\n" +
"&cRating: &6%rating%&c/&610&c\n" +
"&cHelpers: &6%helpers%&c\n" +
"&cTrusted: &6%trusted%&c\n" +
"&cDenied: &6%denied%&c\n" +
"&cFlags: &6%flags%"
),
/*
* PLOT_INFO("" +
* "&6ID&7: &a%id%&7\n" +
* "&6Alias&7: &a%alias%\n" +
* "&6Owner&7: &a%owner%\n" +
* "&6Helpers&7: &a%helpers%\n" +
* "&6Trusted&7: &a%trusted%\n" +
* "&6Denied&7: &a%denied%\n" +
* "&6Flags&7: &a%flags%\n" +
* "&6Biome&7: &a%biome%\n" +
* "&6Rating&7: &a%rating%&7/&a10\n" +
* "&6Can build&7: &a%build%"
* ),
*/
PLOT_INFO("&cID: &6%id%&c\n" + "&cAlias: &6%alias%&c\n" + "&cOwner: &6%owner%&c\n" + "&cBiome: &6%biome%&c\n" + "&cCan Build: &6%build%&c\n" + "&cRating: &6%rating%&c/&610&c\n" + "&cHelpers: &6%helpers%&c\n" + "&cTrusted: &6%trusted%&c\n" + "&cDenied: &6%denied%&c\n" + "&cFlags: &6%flags%"),
PLOT_INFO_HELPERS("&6Helpers&7: %helpers%"),
PLOT_INFO_TRUSTED("&6Trusted&7: %trusted%"),
PLOT_INFO_DENIED("&6Denied&7: %denied%"),
@ -426,7 +422,8 @@ public enum C {
/**
* Constructor
*
* @param d default
* @param d
* default
*/
C(final String d) {
this.d = d;
@ -440,14 +437,11 @@ public enum C {
manager = new TranslationManager();
}
if (defaultFile == null) {
defaultFile = new YamlTranslationFile(BukkitTranslation.getParent(PlotMain.getMain()), lang, "PlotSquared", manager)
.read();
defaultFile = new YamlTranslationFile(BukkitTranslation.getParent(PlotMain.getMain()), lang, "PlotSquared", manager).read();
}
// register everything in this class
for (C c : values()) {
manager.addTranslationObject(
new TranslationObject(c.toString(), c.d, "", "")
);
for (final C c : values()) {
manager.addTranslationObject(new TranslationObject(c.toString(), c.d, "", ""));
}
}
@ -473,16 +467,17 @@ public enum C {
public String s() {
return manager.getTranslated(toString(), lang).getTranslated().replaceAll("&-", "\n").replaceAll("\\n", "\n");
/*
if (PlotMain.translations != null) {
final String t = PlotMain.translations.getString(this.toString());
if (t != null) {
this.s = t;
}
}
if (this.s.length() < 1) {
return "";
}
return this.s.replace("\\n", "\n");*/
* if (PlotMain.translations != null) {
* final String t = PlotMain.translations.getString(this.toString());
* if (t != null) {
* this.s = t;
* }
* }
* if (this.s.length() < 1) {
* return "";
* }
* return this.s.replace("\\n", "\n");
*/
}
/**

View File

@ -21,12 +21,13 @@
package com.intellectualcrafters.plot.config;
import com.intellectualcrafters.plot.object.PlotBlock;
import org.bukkit.block.Biome;
import java.util.ArrayList;
import java.util.List;
import org.bukkit.block.Biome;
import com.intellectualcrafters.plot.object.PlotBlock;
/**
* Main Configuration Utility
*
@ -63,9 +64,10 @@ public class Configuration {
@Override
public boolean validateValue(final String string) {
try {
int x = Integer.parseInt(string);
Integer.parseInt(string);
return true;
} catch (final Exception e) {
}
catch (final Exception e) {
return false;
}
}
@ -80,9 +82,10 @@ public class Configuration {
@Override
public boolean validateValue(final String string) {
try {
boolean b = Boolean.parseBoolean(string);
Boolean.parseBoolean(string);
return true;
} catch (final Exception e) {
}
catch (final Exception e) {
return false;
}
}
@ -97,9 +100,10 @@ public class Configuration {
@Override
public boolean validateValue(final String string) {
try {
double d = Double.parseDouble(string);
Double.parseDouble(string);
return true;
} catch (final Exception e) {
}
catch (final Exception e) {
return false;
}
}
@ -116,7 +120,8 @@ public class Configuration {
try {
Biome.valueOf(string.toUpperCase());
return true;
} catch (final Exception e) {
}
catch (final Exception e) {
return false;
}
}
@ -143,15 +148,15 @@ public class Configuration {
try {
if (string.contains(":")) {
final String[] split = string.split(":");
short s =
Short.parseShort(split[0]);
short z =
Short.parseShort(split[1]);
} else {
short s = Short.parseShort(string);
}
else {
Short.parseShort(string);
}
return true;
} catch (final Exception e) {
}
catch (final Exception e) {
return false;
}
}
@ -161,7 +166,8 @@ public class Configuration {
if (string.contains(":")) {
final String[] split = string.split(":");
return new PlotBlock(Short.parseShort(split[0]), Byte.parseByte(split[1]));
} else {
}
else {
return new PlotBlock(Short.parseShort(string), (byte) 0);
}
}
@ -178,19 +184,21 @@ public class Configuration {
for (String block : string.split(",")) {
if (block.contains("%")) {
final String[] split = block.split("%");
int i = Integer.parseInt(split[0]);
Integer.parseInt(split[0]);
block = split[1];
}
if (block.contains(":")) {
final String[] split = block.split(":");
short s = Short.parseShort(split[0]);
short z = Short.parseShort(split[1]);
} else {
short s = Short.parseShort(block);
Short.parseShort(split[0]);
Short.parseShort(split[1]);
}
else {
Short.parseShort(block);
}
}
return true;
} catch (final Exception e) {
}
catch (final Exception e) {
return false;
}
}
@ -212,7 +220,8 @@ public class Configuration {
if (value < min) {
min = value;
}
} else {
}
else {
counts[i] = 1;
if (1 < min) {
min = 1;
@ -221,7 +230,8 @@ public class Configuration {
if (blocks[i].contains(":")) {
final String[] split = blocks[i].split(":");
values[i] = new PlotBlock(Short.parseShort(split[0]), Byte.parseByte(split[1]));
} else {
}
else {
values[i] = new PlotBlock(Short.parseShort(blocks[i]), (byte) 0);
}
}

View File

@ -21,10 +21,11 @@
package com.intellectualcrafters.plot.config;
import com.intellectualcrafters.plot.config.Configuration.SettingValue;
import java.util.Arrays;
import org.apache.commons.lang.StringUtils;
import java.util.Arrays;
import com.intellectualcrafters.plot.config.Configuration.SettingValue;
/**
* Configuration Node
@ -54,7 +55,8 @@ public class ConfigurationNode {
try {
final Object result = this.type.parseString(string);
return result != null;
} catch (final Exception e) {
}
catch (final Exception e) {
return false;
}
}

View File

@ -122,6 +122,7 @@ public class Settings {
* Use offline mode storage
*/
public static boolean OFFLINE_MODE = false;
/**
* Database settings
*

View File

@ -21,18 +21,19 @@
package com.intellectualcrafters.plot.database;
import com.intellectualcrafters.plot.flag.Flag;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotComment;
import com.intellectualcrafters.plot.object.PlotId;
import org.bukkit.OfflinePlayer;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.UUID;
import org.bukkit.OfflinePlayer;
import com.intellectualcrafters.plot.flag.Flag;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotComment;
import com.intellectualcrafters.plot.object.PlotId;
/**
* @author Citymonstret
* @author Empire92
@ -49,61 +50,73 @@ public interface AbstractDB {
/**
* Set Plot owner
*
* @param plot Plot in which the owner should be set
* @param uuid The uuid of the new owner
* @param plot
* Plot in which the owner should be set
* @param uuid
* The uuid of the new owner
*/
public void setOwner(final Plot plot, final UUID uuid);
/**
* Create all settings, and create default helpers, trusted + denied lists
*
* @param plots Plots for which the default table entries should be created
* @param plots
* Plots for which the default table entries should be created
*/
public void createAllSettingsAndHelpers(final ArrayList<Plot> plots);
/**
* Create a plot
*
* @param plots Plots that should be created
* @param plots
* Plots that should be created
*/
public void createPlots(final ArrayList<Plot> plots);
/**
* Create a plot
*
* @param plot That should be created
* @param plot
* That should be created
*/
public void createPlot(final Plot plot);
/**
* Create tables
*
* @param database Database in which the tables will be created
* @param database
* Database in which the tables will be created
*
* @throws SQLException If the database manager is unable to create the tables
* @throws SQLException
* If the database manager is unable to create the tables
*/
public void createTables(final String database, final boolean add_constraint) throws Exception;
/**
* Delete a plot
*
* @param plot Plot that should be deleted
* @param plot
* Plot that should be deleted
*/
public void delete(final String world, final Plot plot);
/**
* Create plot settings
*
* @param id Plot Entry ID
* @param plot Plot Object
* @param id
* Plot Entry ID
* @param plot
* Plot Object
*/
public void createPlotSettings(final int id, final Plot plot);
/**
* Get the table entry ID
*
* @param world Which the plot is located in
* @param id2 Plot ID
* @param world
* Which the plot is located in
* @param id2
* Plot ID
* @return Integer = Plot Entry Id
*/
public int getId(final String world, final PlotId id2);
@ -116,97 +129,125 @@ public interface AbstractDB {
/**
* Set the merged status for a plot
*
* @param world World in which the plot is located
* @param plot Plot Object
* @param merged boolean[]
* @param world
* World in which the plot is located
* @param plot
* Plot Object
* @param merged
* boolean[]
*/
public void setMerged(final String world, final Plot plot, final boolean[] merged);
/**
* Set plot flags
*
* @param world World in which the plot is located
* @param plot Plot Object
* @param flags flags to set (flag[])
* @param world
* World in which the plot is located
* @param plot
* Plot Object
* @param flags
* flags to set (flag[])
*/
public void setFlags(final String world, final Plot plot, final Flag[] flags);
/**
* Set the plot alias
*
* @param plot Plot for which the alias should be set
* @param alias Plot Alias
* @param plot
* Plot for which the alias should be set
* @param alias
* Plot Alias
*/
public void setAlias(final String world, final Plot plot, final String alias);
/**
* Purgle a plot
*
* @param world World in which the plot is located
* @param id Plot ID
* @param world
* World in which the plot is located
* @param id
* Plot ID
*/
public void purge(final String world, final PlotId id);
/**
* Purge a whole world
*
* @param world World in which the plots should be purged
* @param world
* World in which the plots should be purged
*/
public void purge(final String world);
/**
* Set Plot Home Position
* @param plot Plot Object
* @param position Plot Home Position
*
* @param plot
* Plot Object
* @param position
* Plot Home Position
*/
public void setPosition(final String world, final Plot plot, final String position);
/**
* @param id Plot Entry ID
* @param id
* Plot Entry ID
* @return Plot Settings
*/
public HashMap<String, Object> getSettings(final int id);
/**
* @param plot Plot Object
* @param player Player that should be removed
* @param plot
* Plot Object
* @param player
* Player that should be removed
*/
public void removeHelper(final String world, final Plot plot, final OfflinePlayer player);
/**
* @param plot Plot Object
* @param player Player that should be removed
* @param plot
* Plot Object
* @param player
* Player that should be removed
*/
public void removeTrusted(final String world, final Plot plot, final OfflinePlayer player);
/**
* @param plot Plot Object
* @param player Player that should be removed
* @param plot
* Plot Object
* @param player
* Player that should be removed
*/
public void setHelper(final String world, final Plot plot, final OfflinePlayer player);
/**
* @param plot Plot Object
* @param player Player that should be added
* @param plot
* Plot Object
* @param player
* Player that should be added
*/
public void setTrusted(final String world, final Plot plot, final OfflinePlayer player);
/**
* @param plot Plot Object
* @param player Player that should be added
* @param plot
* Plot Object
* @param player
* Player that should be added
*/
public void removeDenied(final String world, final Plot plot, final OfflinePlayer player);
/**
* @param plot Plot Object
* @param player Player that should be added
* @param plot
* Plot Object
* @param player
* Player that should be added
*/
public void setDenied(final String world, final Plot plot, final OfflinePlayer player);
/**
* Get Plots ratings
*
* @param plot Plot Object
* @param plot
* Plot Object
* @return Plot Ratings (pre-calculated)
*/
public double getRatings(final Plot plot);
@ -214,27 +255,36 @@ public interface AbstractDB {
/**
* Remove a plot comment
*
* @param world World in which the plot is located
* @param plot Plot Object
* @param comment Comment to remove
* @param world
* World in which the plot is located
* @param plot
* Plot Object
* @param comment
* Comment to remove
*/
public void removeComment(final String world, final Plot plot, final PlotComment comment);
/**
* Set a plot comment
*
* @param world World in which the plot is located
* @param plot Plot Object
* @param comment Comment to add
* @param world
* World in which the plot is located
* @param plot
* Plot Object
* @param comment
* Comment to add
*/
public void setComment(final String world, final Plot plot, final PlotComment comment);
/**
* Get Plot Comments
*
* @param world World in which the plot is located
* @param plot Plot Object
* @param tier Comment Tier
* @param world
* World in which the plot is located
* @param plot
* Plot Object
* @param tier
* Comment Tier
* @return Plot Comments within the specified tier
*/
public ArrayList<PlotComment> getComments(final String world, final Plot plot, final int tier);

View File

@ -21,17 +21,18 @@
package com.intellectualcrafters.plot.database;
import com.intellectualcrafters.plot.flag.Flag;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotComment;
import com.intellectualcrafters.plot.object.PlotId;
import org.bukkit.OfflinePlayer;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.UUID;
import org.bukkit.OfflinePlayer;
import com.intellectualcrafters.plot.flag.Flag;
import com.intellectualcrafters.plot.object.Plot;
import com.intellectualcrafters.plot.object.PlotComment;
import com.intellectualcrafters.plot.object.PlotId;
/**
* DB Functions
*
@ -51,8 +52,11 @@ public class DBFunc {
/**
* Set the owner of a plot
* @param plot Plot Object
* @param uuid New Owner
*
* @param plot
* Plot Object
* @param uuid
* New Owner
*/
public static void setOwner(final Plot plot, final UUID uuid) {
dbManager.setOwner(plot, uuid);
@ -60,7 +64,9 @@ public class DBFunc {
/**
* Create all settings + (helpers, denied, trusted)
* @param plots List containing all plot objects
*
* @param plots
* List containing all plot objects
*/
public static void createAllSettingsAndHelpers(final ArrayList<Plot> plots) {
dbManager.createAllSettingsAndHelpers(plots);
@ -68,7 +74,9 @@ public class DBFunc {
/**
* Create all plots
* @param plots A list containing plot objects
*
* @param plots
* A list containing plot objects
*/
public static void createPlots(final ArrayList<Plot> plots) {
dbManager.createPlots(plots);
@ -77,7 +85,8 @@ public class DBFunc {
/**
* Create a plot
*
* @param plot Plot to create
* @param plot
* Plot to create
*/
public static void createPlot(final Plot plot) {
dbManager.createPlot(plot);
@ -95,7 +104,8 @@ public class DBFunc {
/**
* Delete a plot
*
* @param plot Plot to delete
* @param plot
* Plot to delete
*/
public static void delete(final String world, final Plot plot) {
dbManager.delete(world, plot);
@ -104,8 +114,10 @@ public class DBFunc {
/**
* Create plot settings
*
* @param id Plot ID
* @param plot Plot Object
* @param id
* Plot ID
* @param plot
* Plot Object
*/
public static void createPlotSettings(final int id, final Plot plot) {
dbManager.createPlotSettings(id, plot);
@ -114,8 +126,10 @@ public class DBFunc {
/**
* Get a plot id
*
* @param world World
* @param id2 Plot ID
* @param world
* World
* @param id2
* Plot ID
* @return ID
*/
/*

View File

@ -21,12 +21,12 @@
package com.intellectualcrafters.plot.database;
import org.bukkit.plugin.Plugin;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.bukkit.plugin.Plugin;
/**
* Abstract Database class, serves as a base for any connection method (MySQL,
* SQLite, etc.)
@ -44,7 +44,8 @@ public abstract class Database {
/**
* Creates a new Database
*
* @param plugin Plugin instance
* @param plugin
* Plugin instance
*/
protected Database(final Plugin plugin) {
this.plugin = plugin;
@ -54,8 +55,10 @@ public abstract class Database {
* Opens a connection with the database
*
* @return Opened connection
* @throws SQLException if the connection can not be opened
* @throws ClassNotFoundException if the driver cannot be found
* @throws SQLException
* if the connection can not be opened
* @throws ClassNotFoundException
* if the driver cannot be found
*/
public abstract Connection openConnection() throws SQLException, ClassNotFoundException;
@ -63,7 +66,8 @@ public abstract class Database {
* Checks if a connection is open with the database
*
* @return true if the connection is open
* @throws SQLException if the connection cannot be checked
* @throws SQLException
* if the connection cannot be checked
*/
public abstract boolean checkConnection() throws SQLException;
@ -78,7 +82,8 @@ public abstract class Database {
* Closes the connection with the database
*
* @return true if successful
* @throws SQLException if the connection cannot be closed
* @throws SQLException
* if the connection cannot be closed
*/
public abstract boolean closeConnection() throws SQLException;
@ -86,10 +91,13 @@ public abstract class Database {
* Executes a SQL Query<br>
* If the connection is closed, it will be opened
*
* @param query Query to be run
* @param query
* Query to be run
* @return the results of the query
* @throws SQLException If the query cannot be executed
* @throws ClassNotFoundException If the driver cannot be found; see {@link #openConnection()}
* @throws SQLException
* If the query cannot be executed
* @throws ClassNotFoundException
* If the driver cannot be found; see {@link #openConnection()}
*/
public abstract ResultSet querySQL(final String query) throws SQLException, ClassNotFoundException;
@ -98,10 +106,13 @@ public abstract class Database {
* See {@link java.sql.Statement#executeUpdate(String)}<br>
* If the connection is closed, it will be opened
*
* @param query Query to be run
* @param query
* Query to be run
* @return Result Code, see {@link java.sql.Statement#executeUpdate(String)}
* @throws SQLException If the query cannot be executed
* @throws ClassNotFoundException If the driver cannot be found; see {@link #openConnection()}
* @throws SQLException
* If the query cannot be executed
* @throws ClassNotFoundException
* If the driver cannot be found; see {@link #openConnection()}
*/
public abstract int updateSQL(final String query) throws SQLException, ClassNotFoundException;
}

View File

@ -21,9 +21,13 @@
package com.intellectualcrafters.plot.database;
import org.bukkit.plugin.Plugin;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.*;
import org.bukkit.plugin.Plugin;
/**
* Connects to and uses a MySQL database
@ -43,12 +47,18 @@ public class MySQL extends Database {
/**
* Creates a new MySQL instance
*
* @param plugin Plugin instance
* @param hostname Name of the host
* @param port Port number
* @param database Database name
* @param username Username
* @param password Password
* @param plugin
* Plugin instance
* @param hostname
* Name of the host
* @param port
* Port number
* @param database
* Database name
* @param username
* Username
* @param password
* Password
*/
public MySQL(final Plugin plugin, final String hostname, final String port, final String database, final String username, final String password) {
super(plugin);

View File

@ -21,6 +21,22 @@
package com.intellectualcrafters.plot.database;
import java.io.IOException;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import java.util.UUID;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.WorldCreator;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.plugin.Plugin;
import com.google.common.base.Charsets;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.config.Settings;
@ -31,16 +47,6 @@ import com.worldcretornica.plotme.PlayerList;
import com.worldcretornica.plotme.Plot;
import com.worldcretornica.plotme.PlotManager;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.WorldCreator;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.plugin.Plugin;
import java.io.IOException;
import java.lang.reflect.Field;
import java.util.*;
/**
* Created 2014-08-17 for PlotSquared
*
@ -57,13 +63,14 @@ public class PlotMeConverter {
/**
* Constructor
*
* @param plugin Plugin Used to run the converter
* @param plugin
* Plugin Used to run the converter
*/
public PlotMeConverter(final PlotMain plugin) {
this.plugin = plugin;
}
private void sendMessage(String message) {
private void sendMessage(final String message) {
PlotMain.sendConsoleSenderMessage("&3PlotMe&8->&3PlotSquared&8: " + message);
}
@ -75,17 +82,13 @@ public class PlotMeConverter {
public void run() {
sendMessage("&7Conversion has started");
sendMessage("7Caching playerdata...");
final ArrayList<com.intellectualcrafters.plot.object.Plot> createdPlots =
new ArrayList<>();
final ArrayList<com.intellectualcrafters.plot.object.Plot> createdPlots = new ArrayList<>();
// Online Mode
final boolean online =
Bukkit.getServer().getOnlineMode() && !Settings.OFFLINE_MODE;
final boolean online = Bukkit.getServer().getOnlineMode() && !Settings.OFFLINE_MODE;
// PlotMe Plugin
final Plugin plotMePlugin =
Bukkit.getPluginManager().getPlugin("PlotMe");
final Plugin plotMePlugin = Bukkit.getPluginManager().getPlugin("PlotMe");
// PlotMe Configuration
final FileConfiguration plotConfig =
plotMePlugin.getConfig();
final FileConfiguration plotConfig = plotMePlugin.getConfig();
// Plot Worlds
final Set<String> worlds = new HashSet<>();
// Loop through the worlds
@ -124,7 +127,8 @@ public class PlotMeConverter {
final Boolean auto_link = plotConfig.getBoolean("worlds." + world.getName() + ".AutoLinkPlots"); //
PlotMain.config.set("worlds." + world.getName() + ".plot.auto_merge", auto_link);
} catch (final Exception e) {
}
catch (final Exception e) {
sendMessage("&c-- &lFailed to save configuration for world '" + world.getName() + "'\nThis will need to be done using the setup command, or manually");
}
@ -169,11 +173,13 @@ public class PlotMeConverter {
psDenied.add(set.getValue());
}
}
} else {
}
else {
for (final String user : plot.getAllowed().split(",")) {
if (user.equals("*")) {
psAdded.add(DBFunc.everyone);
} else {
}
else {
final UUID uuid = UUID.nameUUIDFromBytes(("OfflinePlayer:" + user).getBytes(Charsets.UTF_8));
psAdded.add(uuid);
}
@ -182,16 +188,19 @@ public class PlotMeConverter {
for (final String user : plot.getDenied().split(",")) {
if (user.equals("*")) {
psDenied.add(DBFunc.everyone);
} else {
}
else {
final UUID uuid = UUID.nameUUIDFromBytes(("OfflinePlayer:" + user).getBytes(Charsets.UTF_8));
psDenied.add(uuid);
}
}
} catch (final Throwable e) {
}
catch (final Throwable e) {
// Okay, this is evil.
}
}
} catch (final Throwable e) {
}
catch (final Throwable e) {
e.printStackTrace();
}
final PlotId id = new PlotId(Integer.parseInt(plot.id.split(";")[0]), Integer.parseInt(plot.id.split(";")[1]));
@ -199,18 +208,20 @@ public class PlotMeConverter {
if (online) {
pl = new com.intellectualcrafters.plot.object.Plot(id, plot.getOwnerId(), psAdded, psTrusted, psDenied,
"", PlotHomePosition.DEFAULT, null, world.getName(), new boolean[]{false, false, false, false});
} else {
"", PlotHomePosition.DEFAULT, null, world.getName(), new boolean[] { false, false, false, false });
}
else {
final String owner = plot.getOwner();
pl = new com.intellectualcrafters.plot.object.Plot(id, UUID.nameUUIDFromBytes(("OfflinePlayer:" + owner).getBytes(Charsets.UTF_8)), psAdded, psTrusted, psDenied,
"", PlotHomePosition.DEFAULT, null, world.getName(), new boolean[]{false, false, false, false});
"", PlotHomePosition.DEFAULT, null, world.getName(), new boolean[] { false, false, false, false });
}
if (pl != null) {
if (!PlotMain.getPlots(world).containsKey(id)) {
createdPlots.add(pl);
} else {
}
else {
duplicate++;
}
}
@ -229,7 +240,8 @@ public class PlotMeConverter {
PlotMain.sendConsoleSenderMessage("&3PlotMe&8->&3PlotSquared&8:&7 Saving configuration...");
try {
PlotMain.config.save(PlotMain.configFile);
} catch (final IOException e) {
}
catch (final IOException e) {
PlotMain.sendConsoleSenderMessage(" - &cFailed to save configuration.");
}
@ -238,7 +250,8 @@ public class PlotMeConverter {
if ((Bukkit.getPluginManager().getPlugin("Multiverse-Core") != null) && Bukkit.getPluginManager().getPlugin("Multiverse-Core").isEnabled()) {
MV = true;
} else if ((Bukkit.getPluginManager().getPlugin("MultiWorld") != null) && Bukkit.getPluginManager().getPlugin("MultiWorld").isEnabled()) {
}
else if ((Bukkit.getPluginManager().getPlugin("MultiWorld") != null) && Bukkit.getPluginManager().getPlugin("MultiWorld").isEnabled()) {
MW = true;
}
@ -253,22 +266,26 @@ public class PlotMeConverter {
Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), "mv unload " + worldname);
try {
Thread.sleep(1000);
} catch (final InterruptedException ex) {
}
catch (final InterruptedException ex) {
Thread.currentThread().interrupt();
}
// load
Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), "mv import " + worldname + " normal -g PlotSquared");
} else if (MW) {
}
else if (MW) {
// unload
Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), "mw unload " + worldname);
try {
Thread.sleep(1000);
} catch (final InterruptedException ex) {
}
catch (final InterruptedException ex) {
Thread.currentThread().interrupt();
}
// load
Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), "mw create " + worldname + " plugin:PlotSquared");
} else {
}
else {
Bukkit.getServer().unloadWorld(world, true);
final World myworld = WorldCreator.name(worldname).generator(new WorldGenerator(worldname)).createWorld();
myworld.save();

View File

@ -21,6 +21,24 @@
package com.intellectualcrafters.plot.database;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.Set;
import java.util.UUID;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.block.Biome;
import com.intellectualcrafters.plot.PlotMain;
import com.intellectualcrafters.plot.flag.Flag;
import com.intellectualcrafters.plot.flag.FlagManager;
@ -32,14 +50,6 @@ import com.intellectualcrafters.plot.util.Logger;
import com.intellectualcrafters.plot.util.Logger.LogLevel;
import com.intellectualcrafters.plot.util.UUIDHandler;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.block.Biome;
import java.sql.*;
import java.util.*;
/**
* @author Citymonstret
*/
@ -59,38 +69,35 @@ public class SQLManager implements AbstractDB {
/**
* Constructor
*
* @param c connection
* @param p prefix
* @param c
* connection
* @param p
* prefix
*/
public SQLManager(Connection c, String p) {
public SQLManager(final Connection c, final String p) {
// Private final
connection = c;
prefix = p;
this.connection = c;
this.prefix = p;
// Set timout
// setTimout();
// setTimout();
// Public final
SET_OWNER =
"UPDATE `" + prefix + "plot` SET `owner` = ? WHERE `plot_id_x` = ? AND `plot_id_z` = ?";
GET_ALL_PLOTS =
"SELECT `id`, `plot_id_x`, `plot_id_z`, `world` FROM `" + prefix + "plot`";
CREATE_PLOTS =
"INSERT INTO `" + prefix + "plot`(`plot_id_x`, `plot_id_z`, `owner`, `world`) values ";
CREATE_SETTINGS =
"INSERT INTO `" + prefix + "plot_settings` (`plot_plot_id`) values ";
CREATE_HELPERS =
"INSERT INTO `" + prefix + "plot_helpers` (`plot_plot_id`, `user_uuid`) values ";
CREATE_PLOT =
"INSERT INTO `" + prefix + "plot`(`plot_id_x`, `plot_id_z`, `owner`, `world`) VALUES(?, ?, ?, ?)";
this.SET_OWNER = "UPDATE `" + this.prefix + "plot` SET `owner` = ? WHERE `plot_id_x` = ? AND `plot_id_z` = ?";
this.GET_ALL_PLOTS = "SELECT `id`, `plot_id_x`, `plot_id_z`, `world` FROM `" + this.prefix + "plot`";
this.CREATE_PLOTS = "INSERT INTO `" + this.prefix + "plot`(`plot_id_x`, `plot_id_z`, `owner`, `world`) values ";
this.CREATE_SETTINGS = "INSERT INTO `" + this.prefix + "plot_settings` (`plot_plot_id`) values ";
this.CREATE_HELPERS = "INSERT INTO `" + this.prefix + "plot_helpers` (`plot_plot_id`, `user_uuid`) values ";
this.CREATE_PLOT = "INSERT INTO `" + this.prefix + "plot`(`plot_id_x`, `plot_id_z`, `owner`, `world`) VALUES(?, ?, ?, ?)";
//schedule reconnect
// schedule reconnect
if (PlotMain.getMySQL() != null) {
Bukkit.getScheduler().scheduleSyncRepeatingTask(PlotMain.getMain(), new Runnable(){
public void run(){
Bukkit.getScheduler().scheduleSyncRepeatingTask(PlotMain.getMain(), new Runnable() {
@Override
public void run() {
try {
connection = PlotMain.getMySQL().forceConnection();
SQLManager.this.connection = PlotMain.getMySQL().forceConnection();
}
catch (Exception e) {
catch (final Exception e) {
e.printStackTrace();
}
}
@ -98,28 +105,32 @@ public class SQLManager implements AbstractDB {
}
}
//
// public void setTimout() {
// runTask(new Runnable() {
// @Override
// public void run() {
// try {
// final PreparedStatement statement = connection.prepareStatement("SET GLOBAL wait_timeout =28800;");
// statement.executeQuery();
// statement.close();
// } catch (final SQLException e) {
// e.printStackTrace();
// Logger.add(LogLevel.DANGER, "Could not reset MySQL timout.");
// }
// }
// });
// }
//
// public void setTimout() {
// runTask(new Runnable() {
// @Override
// public void run() {
// try {
// final PreparedStatement statement =
// connection.prepareStatement("SET GLOBAL wait_timeout =28800;");
// statement.executeQuery();
// statement.close();
// } catch (final SQLException e) {
// e.printStackTrace();
// Logger.add(LogLevel.DANGER, "Could not reset MySQL timout.");
// }
// }
// });
// }
/**
* Set Plot owner
*
* @param plot Plot Object
* @param uuid Owner UUID
* @param plot
* Plot Object
* @param uuid
* Owner UUID
*/
@Override
public void setOwner(final Plot plot, final UUID uuid) {
@ -127,13 +138,14 @@ public class SQLManager implements AbstractDB {
@Override
public void run() {
try {
final PreparedStatement statement = connection.prepareStatement(SET_OWNER);
final PreparedStatement statement = SQLManager.this.connection.prepareStatement(SQLManager.this.SET_OWNER);
statement.setString(1, uuid.toString());
statement.setInt(2, plot.id.x);
statement.setInt(3, plot.id.y);
statement.executeUpdate();
statement.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.DANGER, "Could not set owner for plot " + plot.id);
}
@ -150,7 +162,7 @@ public class SQLManager implements AbstractDB {
final HashMap<String, HashMap<PlotId, Integer>> stored = new HashMap<>();
final HashMap<Integer, ArrayList<UUID>> helpers = new HashMap<>();
try {
final PreparedStatement stmt = connection.prepareStatement(GET_ALL_PLOTS);
final PreparedStatement stmt = this.connection.prepareStatement(this.GET_ALL_PLOTS);
final ResultSet result = stmt.executeQuery();
while (result.next()) {
final int id = result.getInt("id");
@ -163,7 +175,8 @@ public class SQLManager implements AbstractDB {
}
stored.get(world).put(new PlotId(idx, idz), id);
}
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
}
@ -183,26 +196,27 @@ public class SQLManager implements AbstractDB {
// add plot settings
final Integer[] ids = helpers.keySet().toArray(new Integer[helpers.keySet().size()]);
StringBuilder statement = new StringBuilder(CREATE_SETTINGS);
StringBuilder statement = new StringBuilder(this.CREATE_SETTINGS);
for (int i = 0; i < (ids.length - 1); i++) {
statement.append("(?),");
}
statement.append("(?)");
PreparedStatement stmt = null;
try {
stmt = connection.prepareStatement(statement.toString());
stmt = this.connection.prepareStatement(statement.toString());
for (int i = 0; i < ids.length; i++) {
stmt.setInt(i + 1, ids[i]);
}
stmt.executeUpdate();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
}
// add plot helpers
String prefix = "";
statement = new StringBuilder(CREATE_HELPERS);
statement = new StringBuilder(this.CREATE_HELPERS);
for (final Integer id : helpers.keySet()) {
for (final UUID helper : helpers.get(id)) {
statement.append(prefix + "(?, ?)");
@ -213,7 +227,7 @@ public class SQLManager implements AbstractDB {
return;
}
try {
stmt = connection.prepareStatement(statement.toString());
stmt = this.connection.prepareStatement(statement.toString());
int counter = 0;
for (final Integer id : helpers.keySet()) {
for (final UUID helper : helpers.get(id)) {
@ -225,7 +239,8 @@ public class SQLManager implements AbstractDB {
}
stmt.executeUpdate();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
Logger.add(LogLevel.WARNING, "Failed to set helper for plots");
e.printStackTrace();
}
@ -245,7 +260,7 @@ public class SQLManager implements AbstractDB {
if (plots.size() == 0) {
return;
}
final StringBuilder statement = new StringBuilder(CREATE_PLOTS);
final StringBuilder statement = new StringBuilder(this.CREATE_PLOTS);
for (int i = 0; i < (plots.size() - 1); i++) {
statement.append("(?,?,?,?),");
@ -254,7 +269,7 @@ public class SQLManager implements AbstractDB {
PreparedStatement stmt = null;
try {
stmt = connection.prepareStatement(statement.toString());
stmt = this.connection.prepareStatement(statement.toString());
for (int i = 0; i < plots.size(); i++) {
final Plot plot = plots.get(i);
stmt.setInt((i * 4) + 1, plot.id.x);
@ -264,7 +279,8 @@ public class SQLManager implements AbstractDB {
}
stmt.executeUpdate();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.DANGER, "Failed to save plots!");
}
@ -279,14 +295,15 @@ public class SQLManager implements AbstractDB {
public void createPlot(final Plot plot) {
PreparedStatement stmt = null;
try {
stmt = connection.prepareStatement(CREATE_PLOT);
stmt = this.connection.prepareStatement(this.CREATE_PLOT);
stmt.setInt(1, plot.id.x);
stmt.setInt(2, plot.id.y);
stmt.setString(3, plot.owner.toString());
stmt.setString(4, plot.world);
stmt.executeUpdate();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.DANGER, "Failed to save plot " + plot.id);
}
@ -300,31 +317,29 @@ public class SQLManager implements AbstractDB {
@Override
public void createTables(final String database, final boolean add_constraint) throws SQLException {
final boolean mysql = database.equals("mysql");
final Statement stmt = connection.createStatement();
final Statement stmt = this.connection.createStatement();
if (mysql) {
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot` (" + "`id` INT(11) NOT NULL AUTO_INCREMENT," + "`plot_id_x` INT(11) NOT NULL," + "`plot_id_z` INT(11) NOT NULL," + "`owner` VARCHAR(45) NOT NULL," + "`world` VARCHAR(45) NOT NULL," + "`timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP," + "PRIMARY KEY (`id`)" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=0");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_denied` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_helpers` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_comments` (" + "`plot_plot_id` INT(11) NOT NULL," + "`comment` VARCHAR(40) NOT NULL," + "`tier` INT(11) NOT NULL," + "`sender` VARCHAR(40) NOT NULL" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_trusted` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_settings` (" + " `plot_plot_id` INT(11) NOT NULL," + " `biome` VARCHAR(45) DEFAULT 'FOREST'," + " `rain` INT(1) DEFAULT 0," + " `custom_time` TINYINT(1) DEFAULT '0'," + " `time` INT(11) DEFAULT '8000'," + " `deny_entry` TINYINT(1) DEFAULT '0'," + " `alias` VARCHAR(50) DEFAULT NULL," + " `flags` VARCHAR(512) DEFAULT NULL," + " `merged` INT(11) DEFAULT NULL," + " `position` VARCHAR(50) NOT NULL DEFAULT 'DEFAULT'," + " PRIMARY KEY (`plot_plot_id`)," + " UNIQUE KEY `unique_alias` (`alias`)" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_ratings` ( `plot_plot_id` INT(11) NOT NULL, `rating` INT(2) NOT NULL, `player` VARCHAR(40) NOT NULL, PRIMARY KEY(`plot_plot_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot` (" + "`id` INT(11) NOT NULL AUTO_INCREMENT," + "`plot_id_x` INT(11) NOT NULL," + "`plot_id_z` INT(11) NOT NULL," + "`owner` VARCHAR(45) NOT NULL," + "`world` VARCHAR(45) NOT NULL," + "`timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP," + "PRIMARY KEY (`id`)" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=0");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_denied` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_helpers` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_comments` (" + "`plot_plot_id` INT(11) NOT NULL," + "`comment` VARCHAR(40) NOT NULL," + "`tier` INT(11) NOT NULL," + "`sender` VARCHAR(40) NOT NULL" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_trusted` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_settings` (" + " `plot_plot_id` INT(11) NOT NULL," + " `biome` VARCHAR(45) DEFAULT 'FOREST'," + " `rain` INT(1) DEFAULT 0," + " `custom_time` TINYINT(1) DEFAULT '0'," + " `time` INT(11) DEFAULT '8000'," + " `deny_entry` TINYINT(1) DEFAULT '0'," + " `alias` VARCHAR(50) DEFAULT NULL," + " `flags` VARCHAR(512) DEFAULT NULL," + " `merged` INT(11) DEFAULT NULL," + " `position` VARCHAR(50) NOT NULL DEFAULT 'DEFAULT'," + " PRIMARY KEY (`plot_plot_id`)," + " UNIQUE KEY `unique_alias` (`alias`)" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_ratings` ( `plot_plot_id` INT(11) NOT NULL, `rating` INT(2) NOT NULL, `player` VARCHAR(40) NOT NULL, PRIMARY KEY(`plot_plot_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8");
if (add_constraint) {
stmt.addBatch("ALTER TABLE `" + prefix + "plot_settings` ADD CONSTRAINT `" + prefix + "plot_settings_ibfk_1` FOREIGN KEY (`plot_plot_id`) REFERENCES `" + prefix + "plot` (`id`) ON DELETE CASCADE");
stmt.addBatch("ALTER TABLE `" + this.prefix + "plot_settings` ADD CONSTRAINT `" + this.prefix + "plot_settings_ibfk_1` FOREIGN KEY (`plot_plot_id`) REFERENCES `" + this.prefix + "plot` (`id`) ON DELETE CASCADE");
}
} else {
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot` (" + "`id` INTEGER PRIMARY KEY AUTOINCREMENT," + "`plot_id_x` INT(11) NOT NULL," + "`plot_id_z` INT(11) NOT NULL," + "`owner` VARCHAR(45) NOT NULL," + "`world` VARCHAR(45) NOT NULL," + "`timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP)");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_denied` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ")");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_helpers` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ")");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_trusted` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ")");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_comments` (" + "`plot_plot_id` INT(11) NOT NULL," + "`comment` VARCHAR(40) NOT NULL," + "`tier` INT(11) NOT NULL," + "`sender` VARCHAR(40) NOT NULL" + ")");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_settings` (" + " `plot_plot_id` INT(11) NOT NULL," + " `biome` VARCHAR(45) DEFAULT 'FOREST'," + " `rain` INT(1) DEFAULT 0," + " `custom_time` TINYINT(1) DEFAULT '0'," + " `time` INT(11) DEFAULT '8000'," + " `deny_entry` TINYINT(1) DEFAULT '0'," + " `alias` VARCHAR(50) DEFAULT NULL," + " `flags` VARCHAR(512) DEFAULT NULL," + " `merged` INT(11) DEFAULT NULL," + " `position` VARCHAR(50) NOT NULL DEFAULT 'DEFAULT'," + " PRIMARY KEY (`plot_plot_id`)" + ")");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + prefix + "plot_ratings` (`plot_plot_id` INT(11) NOT NULL, `rating` INT(2) NOT NULL, `player` VARCHAR(40) NOT NULL, PRIMARY KEY(`plot_plot_id`))");
}
else {
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot` (" + "`id` INTEGER PRIMARY KEY AUTOINCREMENT," + "`plot_id_x` INT(11) NOT NULL," + "`plot_id_z` INT(11) NOT NULL," + "`owner` VARCHAR(45) NOT NULL," + "`world` VARCHAR(45) NOT NULL," + "`timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP)");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_denied` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ")");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_helpers` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ")");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_trusted` (" + "`plot_plot_id` INT(11) NOT NULL," + "`user_uuid` VARCHAR(40) NOT NULL" + ")");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_comments` (" + "`plot_plot_id` INT(11) NOT NULL," + "`comment` VARCHAR(40) NOT NULL," + "`tier` INT(11) NOT NULL," + "`sender` VARCHAR(40) NOT NULL" + ")");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_settings` (" + " `plot_plot_id` INT(11) NOT NULL," + " `biome` VARCHAR(45) DEFAULT 'FOREST'," + " `rain` INT(1) DEFAULT 0," + " `custom_time` TINYINT(1) DEFAULT '0'," + " `time` INT(11) DEFAULT '8000'," + " `deny_entry` TINYINT(1) DEFAULT '0'," + " `alias` VARCHAR(50) DEFAULT NULL," + " `flags` VARCHAR(512) DEFAULT NULL," + " `merged` INT(11) DEFAULT NULL," + " `position` VARCHAR(50) NOT NULL DEFAULT 'DEFAULT'," + " PRIMARY KEY (`plot_plot_id`)" + ")");
stmt.addBatch("CREATE TABLE IF NOT EXISTS `" + this.prefix + "plot_ratings` (`plot_plot_id` INT(11) NOT NULL, `rating` INT(2) NOT NULL, `player` VARCHAR(40) NOT NULL, PRIMARY KEY(`plot_plot_id`))");
}
stmt.executeBatch();
stmt.clearBatch();
@ -345,26 +360,27 @@ public class SQLManager implements AbstractDB {
PreparedStatement stmt = null;
final int id = getId(world, plot.id);
try {
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_settings` WHERE `plot_plot_id` = ?");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + SQLManager.this.prefix + "plot_settings` WHERE `plot_plot_id` = ?");
stmt.setInt(1, id);
stmt.executeUpdate();
stmt.close();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_helpers` WHERE `plot_plot_id` = ?");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + SQLManager.this.prefix + "plot_helpers` WHERE `plot_plot_id` = ?");
stmt.setInt(1, id);
stmt.executeUpdate();
stmt.close();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_trusted` WHERE `plot_plot_id` = ?");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + SQLManager.this.prefix + "plot_trusted` WHERE `plot_plot_id` = ?");
stmt.setInt(1, id);
stmt.executeUpdate();
stmt.close();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_comments` WHERE `plot_plot_id` = ?");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + SQLManager.this.prefix + "plot_comments` WHERE `plot_plot_id` = ?");
stmt.setInt(1, id);
stmt.executeUpdate();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot` WHERE `id` = ?");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + SQLManager.this.prefix + "plot` WHERE `id` = ?");
stmt.setInt(1, id);
stmt.executeUpdate();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.DANGER, "Failed to delete plot " + plot.id);
}
@ -385,11 +401,12 @@ public class SQLManager implements AbstractDB {
public void run() {
PreparedStatement stmt = null;
try {
stmt = connection.prepareStatement("INSERT INTO `" + prefix + "plot_settings`(`plot_plot_id`) VALUES(" + "?)");
stmt = SQLManager.this.connection.prepareStatement("INSERT INTO `" + SQLManager.this.prefix + "plot_settings`(`plot_plot_id`) VALUES(" + "?)");
stmt.setInt(1, id);
stmt.executeUpdate();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
}
@ -401,7 +418,7 @@ public class SQLManager implements AbstractDB {
public int getId(final String world, final PlotId id2) {
PreparedStatement stmt = null;
try {
stmt = connection.prepareStatement("SELECT `id` FROM `" + prefix + "plot` WHERE `plot_id_x` = ? AND `plot_id_z` = ? AND world = ? ORDER BY `timestamp` ASC");
stmt = this.connection.prepareStatement("SELECT `id` FROM `" + this.prefix + "plot` WHERE `plot_id_x` = ? AND `plot_id_z` = ? AND world = ? ORDER BY `timestamp` ASC");
stmt.setInt(1, id2.x);
stmt.setInt(2, id2.y);
stmt.setString(3, world);
@ -412,7 +429,8 @@ public class SQLManager implements AbstractDB {
}
stmt.close();
return id;
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
}
return Integer.MAX_VALUE;
@ -425,27 +443,28 @@ public class SQLManager implements AbstractDB {
public LinkedHashMap<String, HashMap<PlotId, Plot>> getPlots() {
final LinkedHashMap<String, HashMap<PlotId, Plot>> newplots = new LinkedHashMap<>();
try {
final DatabaseMetaData data = connection.getMetaData();
ResultSet rs = data.getColumns(null, null, prefix + "plot", "plot_id");
final DatabaseMetaData data = this.connection.getMetaData();
ResultSet rs = data.getColumns(null, null, this.prefix + "plot", "plot_id");
final boolean execute = rs.next();
if (execute) {
final Statement statement = connection.createStatement();
statement.addBatch("ALTER IGNORE TABLE `" + prefix + "plot` ADD `plot_id_x` int(11) DEFAULT 0");
statement.addBatch("ALTER IGNORE TABLE `" + prefix + "plot` ADD `plot_id_z` int(11) DEFAULT 0");
statement.addBatch("UPDATE `" + prefix + "plot` SET\n" + " `plot_id_x` = IF(" + " LOCATE(';', `plot_id`) > 0," + " SUBSTRING(`plot_id`, 1, LOCATE(';', `plot_id`) - 1)," + " `plot_id`" + " )," + " `plot_id_z` = IF(" + " LOCATE(';', `plot_id`) > 0," + " SUBSTRING(`plot_id`, LOCATE(';', `plot_id`) + 1)," + " NULL" + " )");
statement.addBatch("ALTER TABLE `" + prefix + "plot` DROP `plot_id`");
statement.addBatch("ALTER IGNORE TABLE `" + prefix + "plot_settings` ADD `flags` VARCHAR(512) DEFAULT NULL");
final Statement statement = this.connection.createStatement();
statement.addBatch("ALTER IGNORE TABLE `" + this.prefix + "plot` ADD `plot_id_x` int(11) DEFAULT 0");
statement.addBatch("ALTER IGNORE TABLE `" + this.prefix + "plot` ADD `plot_id_z` int(11) DEFAULT 0");
statement.addBatch("UPDATE `" + this.prefix + "plot` SET\n" + " `plot_id_x` = IF(" + " LOCATE(';', `plot_id`) > 0," + " SUBSTRING(`plot_id`, 1, LOCATE(';', `plot_id`) - 1)," + " `plot_id`" + " )," + " `plot_id_z` = IF(" + " LOCATE(';', `plot_id`) > 0," + " SUBSTRING(`plot_id`, LOCATE(';', `plot_id`) + 1)," + " NULL" + " )");
statement.addBatch("ALTER TABLE `" + this.prefix + "plot` DROP `plot_id`");
statement.addBatch("ALTER IGNORE TABLE `" + this.prefix + "plot_settings` ADD `flags` VARCHAR(512) DEFAULT NULL");
statement.executeBatch();
statement.close();
}
rs = data.getColumns(null, null, prefix + "plot_settings", "merged");
rs = data.getColumns(null, null, this.prefix + "plot_settings", "merged");
if (!rs.next()) {
final Statement statement = connection.createStatement();
statement.addBatch("ALTER TABLE `" + prefix + "plot_settings` ADD `merged` int(11) DEFAULT NULL");
final Statement statement = this.connection.createStatement();
statement.addBatch("ALTER TABLE `" + this.prefix + "plot_settings` ADD `merged` int(11) DEFAULT NULL");
statement.executeBatch();
statement.close();
}
} catch (final Exception e) {
}
catch (final Exception e) {
e.printStackTrace();
}
final HashMap<Integer, Plot> plots = new HashMap<>();
@ -464,8 +483,8 @@ public class SQLManager implements AbstractDB {
/*
* Getting plots
*/
stmt = connection.createStatement();
ResultSet r = stmt.executeQuery("SELECT `id`, `plot_id_x`, `plot_id_z`, `owner`, `world` FROM `" + prefix + "plot`");
stmt = this.connection.createStatement();
ResultSet r = stmt.executeQuery("SELECT `id`, `plot_id_x`, `plot_id_z`, `owner`, `world` FROM `" + this.prefix + "plot`");
PlotId plot_id;
int id;
Plot p;
@ -478,7 +497,8 @@ public class SQLManager implements AbstractDB {
if (!worlds.contains(worldname)) {
if (noExist.containsKey(worldname)) {
noExist.put(worldname, noExist.get(worldname) + 1);
} else {
}
else {
noExist.put(worldname, 1);
}
}
@ -488,15 +508,15 @@ public class SQLManager implements AbstractDB {
user = UUID.fromString(o);
uuids.put(o, user);
}
p = new Plot(plot_id, user, new ArrayList<UUID>(), new ArrayList<UUID>(), new ArrayList<UUID>(), "", PlotHomePosition.DEFAULT, null, worldname, new boolean[]{false, false, false, false});
p = new Plot(plot_id, user, new ArrayList<UUID>(), new ArrayList<UUID>(), new ArrayList<UUID>(), "", PlotHomePosition.DEFAULT, null, worldname, new boolean[] { false, false, false, false });
plots.put(id, p);
}
// stmt.close();
// stmt.close();
/*
* Getting helpers
*/
// stmt = connection.createStatement();
r = stmt.executeQuery("SELECT `user_uuid`, `plot_plot_id` FROM `" + prefix + "plot_helpers`");
// stmt = connection.createStatement();
r = stmt.executeQuery("SELECT `user_uuid`, `plot_plot_id` FROM `" + this.prefix + "plot_helpers`");
while (r.next()) {
id = r.getInt("plot_plot_id");
o = r.getString("user_uuid");
@ -508,17 +528,18 @@ public class SQLManager implements AbstractDB {
final Plot plot = plots.get(id);
if (plot != null) {
plot.addHelper(user);
} else {
}
else {
PlotMain.sendConsoleSenderMessage("&cPLOT " + id + " in plot_helpers does not exist. Please create the plot or remove this entry.");
}
}
// stmt.close();
// stmt.close();
/*
* Getting trusted
*/
// stmt = connection.createStatement();
r = stmt.executeQuery("SELECT `user_uuid`, `plot_plot_id` FROM `" + prefix + "plot_trusted`");
// stmt = connection.createStatement();
r = stmt.executeQuery("SELECT `user_uuid`, `plot_plot_id` FROM `" + this.prefix + "plot_trusted`");
while (r.next()) {
id = r.getInt("plot_plot_id");
o = r.getString("user_uuid");
@ -530,17 +551,18 @@ public class SQLManager implements AbstractDB {
final Plot plot = plots.get(id);
if (plot != null) {
plot.addTrusted(user);
} else {
}
else {
PlotMain.sendConsoleSenderMessage("&cPLOT " + id + " in plot_trusted does not exist. Please create the plot or remove this entry.");
}
}
// stmt.close();
// stmt.close();
/*
* Getting denied
*/
// stmt = connection.createStatement();
r = stmt.executeQuery("SELECT `user_uuid`, `plot_plot_id` FROM `" + prefix + "plot_denied`");
// stmt = connection.createStatement();
r = stmt.executeQuery("SELECT `user_uuid`, `plot_plot_id` FROM `" + this.prefix + "plot_denied`");
while (r.next()) {
id = r.getInt("plot_plot_id");
o = r.getString("user_uuid");
@ -552,25 +574,24 @@ public class SQLManager implements AbstractDB {
final Plot plot = plots.get(id);
if (plot != null) {
plot.addDenied(user);
} else {
}
else {
PlotMain.sendConsoleSenderMessage("&cPLOT " + id + " in plot_denied does not exist. Please create the plot or remove this entry.");
}
}
// stmt.close();
// stmt.close();
// stmt = connection.createStatement();
r = stmt.executeQuery("SELECT * FROM `" + prefix + "plot_settings`");
// stmt = connection.createStatement();
r = stmt.executeQuery("SELECT * FROM `" + this.prefix + "plot_settings`");
while (r.next()) {
id = r.getInt("plot_plot_id");
final Plot plot = plots.get(id);
if (plot != null) {
final String b = r.getString("biome");
Biome biome = null;
if (b != null) {
for (final Biome mybiome : Biome.values()) {
if (mybiome.toString().equalsIgnoreCase(b)) {
biome = mybiome;
break;
}
}
@ -599,15 +620,17 @@ public class SQLManager implements AbstractDB {
merged[3 - i] = ((m) & (1 << i)) != 0;
}
plot.settings.setMerged(merged);
} else {
plot.settings.setMerged(new boolean[]{false, false, false, false});
}
else {
plot.settings.setMerged(new boolean[] { false, false, false, false });
}
String[] flags_string;
final String myflags = r.getString("flags");
if (myflags == null) {
flags_string = new String[]{};
} else {
flags_string = new String[] {};
}
else {
flags_string = myflags.split(",");
}
final ArrayList<Flag> flags = new ArrayList<Flag>();
@ -617,10 +640,12 @@ public class SQLManager implements AbstractDB {
final String[] split = element.split(":");
try {
flags.add(new Flag(FlagManager.getFlag(split[0], true), split[1].replaceAll("\u00AF", ":").replaceAll("<EFBFBD>", ",")));
} catch (final Exception e) {
}
catch (final Exception e) {
exception = true;
}
} else {
}
else {
flags.add(new Flag(FlagManager.getFlag(element, true), ""));
}
}
@ -629,7 +654,8 @@ public class SQLManager implements AbstractDB {
setFlags(id, flags.toArray(new Flag[0]));
}
plot.settings.setFlags(flags.toArray(new Flag[0]));
} else {
}
else {
PlotMain.sendConsoleSenderMessage("&cPLOT " + id + " in plot_settings does not exist. Please create the plot or remove this entry.");
}
}
@ -649,7 +675,8 @@ public class SQLManager implements AbstractDB {
if (invalidPlot) {
PlotMain.sendConsoleSenderMessage("&c[WARNING] - Please create the world/s or remove the plots using the purge command");
}
} catch (final SQLException e) {
}
catch (final SQLException e) {
Logger.add(LogLevel.WARNING, "Failed to load plots.");
e.printStackTrace();
}
@ -667,12 +694,13 @@ public class SQLManager implements AbstractDB {
for (int i = 0; i < 4; ++i) {
n = (n << 1) + (merged[i] ? 1 : 0);
}
final PreparedStatement stmt = connection.prepareStatement("UPDATE `" + prefix + "plot_settings` SET `merged` = ? WHERE `plot_plot_id` = ?");
final PreparedStatement stmt = SQLManager.this.connection.prepareStatement("UPDATE `" + SQLManager.this.prefix + "plot_settings` SET `merged` = ? WHERE `plot_plot_id` = ?");
stmt.setInt(1, n);
stmt.setInt(2, getId(world, plot.id));
stmt.execute();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.WARNING, "Could not set merged for plot " + plot.id);
}
@ -696,12 +724,13 @@ public class SQLManager implements AbstractDB {
@Override
public void run() {
try {
final PreparedStatement stmt = connection.prepareStatement("UPDATE `" + prefix + "plot_settings` SET `flags` = ? WHERE `plot_plot_id` = ?");
final PreparedStatement stmt = SQLManager.this.connection.prepareStatement("UPDATE `" + SQLManager.this.prefix + "plot_settings` SET `flags` = ? WHERE `plot_plot_id` = ?");
stmt.setString(1, flag_string.toString());
stmt.setInt(2, getId(world, plot.id));
stmt.execute();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.WARNING, "Could not set flag for plot " + plot.id);
}
@ -721,12 +750,13 @@ public class SQLManager implements AbstractDB {
@Override
public void run() {
try {
final PreparedStatement stmt = connection.prepareStatement("UPDATE `" + prefix + "plot_settings` SET `flags` = ? WHERE `plot_plot_id` = ?");
final PreparedStatement stmt = SQLManager.this.connection.prepareStatement("UPDATE `" + SQLManager.this.prefix + "plot_settings` SET `flags` = ? WHERE `plot_plot_id` = ?");
stmt.setString(1, flag_string);
stmt.setInt(2, id);
stmt.execute();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.WARNING, "Could not set flag for plot " + id);
}
@ -746,12 +776,13 @@ public class SQLManager implements AbstractDB {
public void run() {
PreparedStatement stmt = null;
try {
stmt = connection.prepareStatement("UPDATE `" + prefix + "plot_settings` SET `alias` = ? WHERE `plot_plot_id` = ?");
stmt = SQLManager.this.connection.prepareStatement("UPDATE `" + SQLManager.this.prefix + "plot_settings` SET `alias` = ? WHERE `plot_plot_id` = ?");
stmt.setString(1, alias);
stmt.setInt(2, getId(world, plot.id));
stmt.executeUpdate();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
Logger.add(LogLevel.WARNING, "Failed to set alias for plot " + plot.id);
e.printStackTrace();
}
@ -776,7 +807,7 @@ public class SQLManager implements AbstractDB {
// Fetching a list of plot IDs for a world
try {
final PreparedStatement stmt = connection.prepareStatement("SELECT `id` FROM `" + prefix + "plot` WHERE `world` = ? AND `plot_id_x` = ? AND `plot_id_z` = ?");
final PreparedStatement stmt = SQLManager.this.connection.prepareStatement("SELECT `id` FROM `" + SQLManager.this.prefix + "plot` WHERE `world` = ? AND `plot_id_x` = ? AND `plot_id_z` = ?");
stmt.setString(1, world);
stmt.setInt(2, id.x);
stmt.setInt(3, id.y);
@ -785,7 +816,8 @@ public class SQLManager implements AbstractDB {
final int id = result.getInt("id");
ids.add(id);
}
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.WARNING, "FAILED TO PURGE WORLD '" + world + "'!");
return;
@ -801,27 +833,28 @@ public class SQLManager implements AbstractDB {
prefix = " OR `plot_plot_id` = ";
}
PreparedStatement stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_helpers` WHERE `plot_plot_id` = " + idstr + "");
PreparedStatement stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + prefix + "plot_helpers` WHERE `plot_plot_id` = " + idstr + "");
stmt.executeUpdate();
stmt.close();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_denied` WHERE `plot_plot_id` = " + idstr + "");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + prefix + "plot_denied` WHERE `plot_plot_id` = " + idstr + "");
stmt.executeUpdate();
stmt.close();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_settings` WHERE `plot_plot_id` = " + idstr + "");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + prefix + "plot_settings` WHERE `plot_plot_id` = " + idstr + "");
stmt.executeUpdate();
stmt.close();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_trusted` WHERE `plot_plot_id` = " + idstr + "");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + prefix + "plot_trusted` WHERE `plot_plot_id` = " + idstr + "");
stmt.executeUpdate();
stmt.close();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot` WHERE `plot_plot_id` = " + idstr + "");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + prefix + "plot` WHERE `plot_plot_id` = " + idstr + "");
stmt.setString(1, world);
stmt.executeUpdate();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.DANGER, "FAILED TO PURGE PLOT FROM DB '" + world + "' , '" + id + "' !");
return;
@ -841,14 +874,15 @@ public class SQLManager implements AbstractDB {
// Fetching a list of plot IDs for a world
try {
final PreparedStatement stmt = connection.prepareStatement("SELECT `id` FROM `" + prefix + "plot` WHERE `world` = ?");
final PreparedStatement stmt = SQLManager.this.connection.prepareStatement("SELECT `id` FROM `" + SQLManager.this.prefix + "plot` WHERE `world` = ?");
stmt.setString(1, world);
final ResultSet result = stmt.executeQuery();
while (result.next()) {
final int id = result.getInt("id");
ids.add(id);
}
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.WARNING, "FAILED TO PURGE WORLD '" + world + "'!");
return;
@ -864,27 +898,28 @@ public class SQLManager implements AbstractDB {
prefix = " OR `plot_plot_id` = ";
}
PreparedStatement stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_helpers` WHERE `plot_plot_id` = " + idstr + "");
PreparedStatement stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + prefix + "plot_helpers` WHERE `plot_plot_id` = " + idstr + "");
stmt.executeUpdate();
stmt.close();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_denied` WHERE `plot_plot_id` = " + idstr + "");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + prefix + "plot_denied` WHERE `plot_plot_id` = " + idstr + "");
stmt.executeUpdate();
stmt.close();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_settings` WHERE `plot_plot_id` = " + idstr + "");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + prefix + "plot_settings` WHERE `plot_plot_id` = " + idstr + "");
stmt.executeUpdate();
stmt.close();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot_trusted` WHERE `plot_plot_id` = " + idstr + "");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + prefix + "plot_trusted` WHERE `plot_plot_id` = " + idstr + "");
stmt.executeUpdate();
stmt.close();
stmt = connection.prepareStatement("DELETE FROM `" + prefix + "plot` WHERE `world` = ?");
stmt = SQLManager.this.connection.prepareStatement("DELETE FROM `" + prefix + "plot` WHERE `world` = ?");
stmt.setString(1, world);
stmt.executeUpdate();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.DANGER, "FAILED TO PURGE WORLD '" + world + "'!");
return;
@ -907,12 +942,13 @@ public class SQLManager implements AbstractDB {
public void run() {
PreparedStatement stmt = null;
try {
stmt = connection.prepareStatement("UPDATE `" + prefix + "plot_settings` SET `position` = ? WHERE `plot_plot_id` = ?");
stmt = SQLManager.this.connection.prepareStatement("UPDATE `" + SQLManager.this.prefix + "plot_settings` SET `position` = ? WHERE `plot_plot_id` = ?");
stmt.setString(1, position);
stmt.setInt(2, getId(world, plot.id));
stmt.executeUpdate();
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
Logger.add(LogLevel.WARNING, "Failed to set position for plot " + plot.id);
e.printStackTrace();
}
@ -929,7 +965,7 @@ public class SQLManager implements AbstractDB {
final HashMap<String, Object> h = new HashMap<String, Object>();
PreparedStatement stmt = null;
try {
stmt = connection.prepareStatement("SELECT * FROM `" + prefix + "plot_settings` WHERE `plot_plot_id` = ?");
stmt = this.connection.prepareStatement("SELECT * FROM `" + this.prefix + "plot_settings` WHERE `plot_plot_id` = ?");
stmt.setInt(1, id);
final ResultSet r = stmt.executeQuery();
String var;
@ -964,7 +1000,8 @@ public class SQLManager implements AbstractDB {
h.put(var, val);
}
stmt.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
Logger.add(LogLevel.WARNING, "Failed to load settings for plot: " + id);
e.printStackTrace();
}
@ -977,14 +1014,15 @@ public class SQLManager implements AbstractDB {
@Override
public void run() {
try {
final PreparedStatement statement = connection.prepareStatement("DELETE FROM `" + prefix + "plot_comments` WHERE `plot_plot_id` = ? AND `comment` = ? AND `tier` = ? AND `sender` = ?");
final PreparedStatement statement = SQLManager.this.connection.prepareStatement("DELETE FROM `" + SQLManager.this.prefix + "plot_comments` WHERE `plot_plot_id` = ? AND `comment` = ? AND `tier` = ? AND `sender` = ?");
statement.setInt(1, getId(world, plot.id));
statement.setString(2, comment.comment);
statement.setInt(3, comment.tier);
statement.setString(4, comment.senderName);
statement.executeUpdate();
statement.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.WARNING, "Failed to remove helper for plot " + plot.id);
}
@ -996,7 +1034,7 @@ public class SQLManager implements AbstractDB {
public ArrayList<PlotComment> getComments(final String world, final Plot plot, final int tier) {
final ArrayList<PlotComment> comments = new ArrayList<PlotComment>();
try {
final PreparedStatement statement = connection.prepareStatement("SELECT `*` FROM `" + prefix + "plot_comments` WHERE `plot_plot_id` = ? AND `tier` = ?");
final PreparedStatement statement = this.connection.prepareStatement("SELECT `*` FROM `" + this.prefix + "plot_comments` WHERE `plot_plot_id` = ? AND `tier` = ?");
statement.setInt(1, getId(plot.getWorld().getName(), plot.id));
statement.setInt(2, tier);
final ResultSet set = statement.executeQuery();
@ -1008,7 +1046,8 @@ public class SQLManager implements AbstractDB {
comments.add(comment);
}
statement.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
Logger.add(LogLevel.WARNING, "Failed to fetch rating for plot " + plot.getId().toString());
e.printStackTrace();
}
@ -1021,14 +1060,15 @@ public class SQLManager implements AbstractDB {
@Override
public void run() {
try {
final PreparedStatement statement = connection.prepareStatement("INSERT INTO `" + prefix + "plot_comments` (`plot_plot_id`, `comment`, `tier`, `sender`) VALUES(?,?,?,?)");
final PreparedStatement statement = SQLManager.this.connection.prepareStatement("INSERT INTO `" + SQLManager.this.prefix + "plot_comments` (`plot_plot_id`, `comment`, `tier`, `sender`) VALUES(?,?,?,?)");
statement.setInt(1, getId(world, plot.id));
statement.setString(2, comment.comment);
statement.setInt(3, comment.tier);
statement.setString(4, comment.senderName);
statement.executeUpdate();
statement.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.WARNING, "Failed to remove helper for plot " + plot.id);
}
@ -1047,12 +1087,13 @@ public class SQLManager implements AbstractDB {
@Override
public void run() {
try {
final PreparedStatement statement = connection.prepareStatement("DELETE FROM `" + prefix + "plot_helpers` WHERE `plot_plot_id` = ? AND `user_uuid` = ?");
final PreparedStatement statement = SQLManager.this.connection.prepareStatement("DELETE FROM `" + SQLManager.this.prefix + "plot_helpers` WHERE `plot_plot_id` = ? AND `user_uuid` = ?");
statement.setInt(1, getId(world, plot.id));
statement.setString(2, UUIDHandler.getUUID(player).toString());
statement.executeUpdate();
statement.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.WARNING, "Failed to remove helper for plot " + plot.id);
}
@ -1070,12 +1111,13 @@ public class SQLManager implements AbstractDB {
@Override
public void run() {
try {
final PreparedStatement statement = connection.prepareStatement("DELETE FROM `" + prefix + "plot_trusted` WHERE `plot_plot_id` = ? AND `user_uuid` = ?");
final PreparedStatement statement = SQLManager.this.connection.prepareStatement("DELETE FROM `" + SQLManager.this.prefix + "plot_trusted` WHERE `plot_plot_id` = ? AND `user_uuid` = ?");
statement.setInt(1, getId(world, plot.id));
statement.setString(2, UUIDHandler.getUUID(player).toString());
statement.executeUpdate();
statement.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.WARNING, "Failed to remove trusted user for plot " + plot.id);
}
@ -1093,12 +1135,13 @@ public class SQLManager implements AbstractDB {
@Override
public void run() {
try {
final PreparedStatement statement = connection.prepareStatement("INSERT INTO `" + prefix + "plot_helpers` (`plot_plot_id`, `user_uuid`) VALUES(?,?)");
final PreparedStatement statement = SQLManager.this.connection.prepareStatement("INSERT INTO `" + SQLManager.this.prefix + "plot_helpers` (`plot_plot_id`, `user_uuid`) VALUES(?,?)");
statement.setInt(1, getId(world, plot.id));
statement.setString(2, UUIDHandler.getUUID(player).toString());
statement.executeUpdate();
statement.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
Logger.add(LogLevel.WARNING, "Failed to set helper for plot " + plot.id);
e.printStackTrace();
}
@ -1116,12 +1159,13 @@ public class SQLManager implements AbstractDB {
@Override
public void run() {
try {
final PreparedStatement statement = connection.prepareStatement("INSERT INTO `" + prefix + "plot_trusted` (`plot_plot_id`, `user_uuid`) VALUES(?,?)");
final PreparedStatement statement = SQLManager.this.connection.prepareStatement("INSERT INTO `" + SQLManager.this.prefix + "plot_trusted` (`plot_plot_id`, `user_uuid`) VALUES(?,?)");
statement.setInt(1, getId(world, plot.id));
statement.setString(2, UUIDHandler.getUUID(player).toString());
statement.executeUpdate();
statement.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
Logger.add(LogLevel.WARNING, "Failed to set plot trusted for plot " + plot.id);
e.printStackTrace();
}
@ -1139,12 +1183,13 @@ public class SQLManager implements AbstractDB {
@Override
public void run() {
try {
final PreparedStatement statement = connection.prepareStatement("DELETE FROM `" + prefix + "plot_denied` WHERE `plot_plot_id` = ? AND `user_uuid` = ?");
final PreparedStatement statement = SQLManager.this.connection.prepareStatement("DELETE FROM `" + SQLManager.this.prefix + "plot_denied` WHERE `plot_plot_id` = ? AND `user_uuid` = ?");
statement.setInt(1, getId(world, plot.id));
statement.setString(2, UUIDHandler.getUUID(player).toString());
statement.executeUpdate();
statement.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
e.printStackTrace();
Logger.add(LogLevel.WARNING, "Failed to remove denied for plot " + plot.id);
}
@ -1162,12 +1207,13 @@ public class SQLManager implements AbstractDB {
@Override
public void run() {
try {
final PreparedStatement statement = connection.prepareStatement("INSERT INTO `" + prefix + "plot_denied` (`plot_plot_id`, `user_uuid`) VALUES(?,?)");
final PreparedStatement statement = SQLManager.this.connection.prepareStatement("INSERT INTO `" + SQLManager.this.prefix + "plot_denied` (`plot_plot_id`, `user_uuid`) VALUES(?,?)");
statement.setInt(1, getId(world, plot.id));
statement.setString(2, UUIDHandler.getUUID(player).toString());
statement.executeUpdate();
statement.close();
} catch (final SQLException e) {
}
catch (final SQLException e) {
Logger.add(LogLevel.WARNING, "Failed to set denied for plot " + plot.id);
e.printStackTrace();
}
@ -1178,7 +1224,7 @@ public class SQLManager implements AbstractDB {
@Override
public double getRatings(final Plot plot) {
try {
final PreparedStatement statement = connection.prepareStatement("SELECT AVG(`rating`) AS `rating` FROM `" + prefix + "plot_ratings` WHERE `plot_plot_id` = ? ");
final PreparedStatement statement = this.connection.prepareStatement("SELECT AVG(`rating`) AS `rating` FROM `" + this.prefix + "plot_ratings` WHERE `plot_plot_id` = ? ");
statement.setInt(1, getId(plot.getWorld().getName(), plot.id));
final ResultSet set = statement.executeQuery();
double rating = 0;
@ -1187,7 +1233,8 @@ public class SQLManager implements AbstractDB {
}
statement.close();
return rating;
} catch (final SQLException e) {
}
catch (final SQLException e) {
Logger.add(LogLevel.WARNING, "Failed to fetch rating for plot " + plot.getId().toString());
e.printStackTrace();
}

View File

@ -21,13 +21,17 @@
package com.intellectualcrafters.plot.database;
import org.bukkit.plugin.Plugin;
import java.io.File;
import java.io.IOException;
import java.sql.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import org.bukkit.plugin.Plugin;
/**
* Connects to and uses a SQLite database
*
@ -42,8 +46,10 @@ public class SQLite extends Database {
/**
* Creates a new SQLite instance
*
* @param plugin Plugin instance
* @param dbLocation Location of the Database (Must end in .db)
* @param plugin
* Plugin instance
* @param dbLocation
* Location of the Database (Must end in .db)
*/
public SQLite(final Plugin plugin, final String dbLocation) {
super(plugin);
@ -62,7 +68,8 @@ public class SQLite extends Database {
if (!(file.exists())) {
try {
file.createNewFile();
} catch (final IOException e) {
}
catch (final IOException e) {
this.plugin.getLogger().log(Level.SEVERE, "Unable to create database!");
}
}

View File

@ -21,12 +21,13 @@
package com.intellectualcrafters.plot.events;
import com.intellectualcrafters.plot.object.Plot;
import org.bukkit.entity.Player;
import org.bukkit.event.Cancellable;
import org.bukkit.event.HandlerList;
import org.bukkit.event.player.PlayerEvent;
import com.intellectualcrafters.plot.object.Plot;
/**
* @author Citymonstret
* @author Empire92
@ -41,10 +42,12 @@ public class PlayerClaimPlotEvent extends PlayerEvent implements Cancellable {
/**
* PlayerClaimPlotEvent: Called when a plot is claimed
*
* @param player Player that claimed the plot
* @param plot Plot that was claimed
* @param player
* Player that claimed the plot
* @param plot
* Plot that was claimed
*/
public PlayerClaimPlotEvent(final Player player, final Plot plot, boolean auto) {
public PlayerClaimPlotEvent(final Player player, final Plot plot, final boolean auto) {
super(player);
this.plot = plot;
this.auto = auto;

View File

@ -21,11 +21,12 @@
package com.intellectualcrafters.plot.events;
import com.intellectualcrafters.plot.object.Plot;
import org.bukkit.entity.Player;
import org.bukkit.event.HandlerList;
import org.bukkit.event.player.PlayerEvent;
import com.intellectualcrafters.plot.object.Plot;
/**
* @author Citymonstret
* @author Empire92
@ -39,8 +40,10 @@ public class PlayerEnterPlotEvent extends PlayerEvent {
/**
* PlayerEnterPlotEvent: Called when a player leaves a plot
*
* @param player Player that entered the plot
* @param plot Plot that was entered
* @param player
* Player that entered the plot
* @param plot
* Plot that was entered
*/
public PlayerEnterPlotEvent(final Player player, final Plot plot) {
super(player);

View File

@ -21,11 +21,12 @@
package com.intellectualcrafters.plot.events;
import com.intellectualcrafters.plot.object.Plot;
import org.bukkit.entity.Player;
import org.bukkit.event.HandlerList;
import org.bukkit.event.player.PlayerEvent;
import com.intellectualcrafters.plot.object.Plot;
/**
* @author Citymonstret
* @author Empire92
@ -38,8 +39,10 @@ public class PlayerLeavePlotEvent extends PlayerEvent {
/**
* PlayerLeavePlotEvent: Called when a player leaves a plot
*
* @param player Player that left the plot
* @param plot Plot that was left
* @param player
* Player that left the plot
* @param plot
* Plot that was left
*/
public PlayerLeavePlotEvent(final Player player, final Plot plot) {
super(player);

View File

@ -21,12 +21,13 @@
package com.intellectualcrafters.plot.events;
import com.intellectualcrafters.plot.object.Plot;
import java.util.UUID;
import org.bukkit.entity.Player;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
import java.util.UUID;
import com.intellectualcrafters.plot.object.Plot;
/**
* @author Citymonstret
@ -44,10 +45,14 @@ public class PlayerPlotDeniedEvent extends Event {
* PlayerPlotDeniedEvent: Called when the denied UUID list is modified for a
* plot
*
* @param initiator Player that initiated the event
* @param plot Plot in which the event occurred
* @param player Player that was denied/un-denied
* @param added true of add to deny list, false if removed
* @param initiator
* Player that initiated the event
* @param plot
* Plot in which the event occurred
* @param player
* Player that was denied/un-denied
* @param added
* true of add to deny list, false if removed
*/
public PlayerPlotDeniedEvent(final Player initiator, final Plot plot, final UUID player, final boolean added) {
this.initiator = initiator;

View File

@ -21,12 +21,13 @@
package com.intellectualcrafters.plot.events;
import com.intellectualcrafters.plot.object.Plot;
import java.util.UUID;
import org.bukkit.entity.Player;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
import java.util.UUID;
import com.intellectualcrafters.plot.object.Plot;
/**
* @author Empire92
@ -43,10 +44,14 @@ public class PlayerPlotHelperEvent extends Event {
/**
* PlayerPlotHelperEvent: Called when a plot helper is added/removed
*
* @param initiator Player that initiated the event
* @param plot Plot in which the event occurred
* @param player Player that was added/removed from the helper list
* @param added true of the player was added, false if the player was removed
* @param initiator
* Player that initiated the event
* @param plot
* Plot in which the event occurred
* @param player
* Player that was added/removed from the helper list
* @param added
* true of the player was added, false if the player was removed
*/
public PlayerPlotHelperEvent(final Player initiator, final Plot plot, final UUID player, final boolean added) {
this.initiator = initiator;

View File

@ -21,12 +21,13 @@
package com.intellectualcrafters.plot.events;
import com.intellectualcrafters.plot.object.Plot;
import java.util.UUID;
import org.bukkit.entity.Player;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
import java.util.UUID;
import com.intellectualcrafters.plot.object.Plot;
/**
* @author Citymonstret
@ -43,10 +44,14 @@ public class PlayerPlotTrustedEvent extends Event {
/**
* PlayerPlotTrustedEvent: Called when a plot trusted user is added/removed
*
* @param initiator Player that initiated the event
* @param plot Plot in which the event occurred
* @param player Player that was added/removed from the trusted list
* @param added true of the player was added, false if the player was removed
* @param initiator
* Player that initiated the event
* @param plot
* Plot in which the event occurred
* @param player
* Player that was added/removed from the trusted list
* @param added
* true of the player was added, false if the player was removed
*/
public PlayerPlotTrustedEvent(final Player initiator, final Plot plot, final UUID player, final boolean added) {
this.initiator = initiator;

Some files were not shown because too many files have changed in this diff Show More