ExceptionSet equals and hash code. MetadataSimple improvements.
This commit is contained in:
parent
0c625a1ff4
commit
b44750a64c
@ -47,22 +47,36 @@ public class MetadataSimple extends MetadataValueAdapter
|
||||
|
||||
public static void set(Plugin plugin, Metadatable metadatable, String key, Object value)
|
||||
{
|
||||
metadatable.setMetadata(key, new MetadataSimple(plugin, value));
|
||||
if (value != null)
|
||||
{
|
||||
metadatable.setMetadata(key, new MetadataSimple(plugin, value));
|
||||
}
|
||||
else
|
||||
{
|
||||
metadatable.removeMetadata(key, plugin);
|
||||
}
|
||||
}
|
||||
|
||||
public static MetadataValue getMeta(Metadatable metadatable, String key)
|
||||
{
|
||||
if (metadatable == null) return null;
|
||||
List<MetadataValue> metaValues = metadatable.getMetadata(key);
|
||||
if (metaValues == null) return null;
|
||||
if (metaValues.size() < 1) return null;
|
||||
if (metaValues.isEmpty()) return null;
|
||||
return metaValues.get(0);
|
||||
}
|
||||
|
||||
public static Object get(Metadatable metadatable, String key)
|
||||
@SuppressWarnings("unchecked")
|
||||
public static <T> T get(Metadatable metadatable, String key)
|
||||
{
|
||||
MetadataValue metaValue = getMeta(metadatable, key);
|
||||
if (metaValue == null) return null;
|
||||
return metaValue.value();
|
||||
return (T) metaValue.value();
|
||||
}
|
||||
|
||||
public static boolean has(Metadatable metadatable, String key)
|
||||
{
|
||||
return get(metadatable, key) != null;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -2,10 +2,12 @@ package com.massivecraft.massivecore.collections;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.Objects;
|
||||
|
||||
import com.massivecraft.massivecore.command.editor.annotation.EditorType;
|
||||
import com.massivecraft.massivecore.command.type.container.TypeMassiveTreeSetInsensitive;
|
||||
import com.massivecraft.massivecore.comparator.ComparatorCaseInsensitive;
|
||||
import com.massivecraft.massivecore.util.MUtil;
|
||||
|
||||
public class ExceptionSet
|
||||
{
|
||||
@ -104,4 +106,29 @@ public class ExceptionSet
|
||||
return ret;
|
||||
}
|
||||
|
||||
// -------------------------------------------- //
|
||||
// EQUALS & HASH CODE
|
||||
// -------------------------------------------- //
|
||||
|
||||
@Override
|
||||
public boolean equals(Object object)
|
||||
{
|
||||
if ( ! (object instanceof ExceptionSet)) return false;
|
||||
ExceptionSet that = (ExceptionSet)object;
|
||||
|
||||
return MUtil.equals(
|
||||
this.standard, that.standard,
|
||||
this.exceptions, that.exceptions
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode()
|
||||
{
|
||||
return Objects.hash(
|
||||
this.standard,
|
||||
this.exceptions
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user