Fix up compile errors
This commit is contained in:
parent
f4b6f84167
commit
47e6a466f2
3 changed files with 70 additions and 18 deletions
|
@ -1,5 +1,7 @@
|
|||
package dev.zontreck.ariaslib.args;
|
||||
|
||||
import dev.zontreck.ariaslib.exceptions.WrongArgumentTypeException;
|
||||
|
||||
public abstract class Argument<T> implements Cloneable
|
||||
{
|
||||
public boolean hasValue = false;
|
||||
|
@ -33,27 +35,70 @@ public abstract class Argument<T> implements Cloneable
|
|||
throw new IllegalArgumentException("No value");
|
||||
}
|
||||
|
||||
/**
|
||||
* Directly cast to the Argument type Long
|
||||
* @return
|
||||
* @throws WrongArgumentTypeException Throws when type does not match
|
||||
*/
|
||||
public LongArgument getAsLong() throws WrongArgumentTypeException {
|
||||
if(this instanceof LongArgument)
|
||||
{
|
||||
return (LongArgument) this;
|
||||
}
|
||||
|
||||
throw new WrongArgumentTypeException();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Directly cast to the Argument type String
|
||||
* @return
|
||||
* @throws WrongArgumentTypeException Throws when type does not match
|
||||
*/
|
||||
public StringArgument getAsString() throws WrongArgumentTypeException {
|
||||
if(this instanceof StringArgument)
|
||||
{
|
||||
return (StringArgument) this;
|
||||
}
|
||||
|
||||
throw new WrongArgumentTypeException();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Directly cast to the Argument type Integer
|
||||
* @return
|
||||
* @throws WrongArgumentTypeException Throws when type does not match
|
||||
*/
|
||||
public IntegerArgument getAsInteger() throws WrongArgumentTypeException
|
||||
{
|
||||
if(this instanceof IntegerArgument)
|
||||
{
|
||||
return (IntegerArgument) this;
|
||||
}
|
||||
|
||||
throw new WrongArgumentTypeException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Argument<T> clone() {
|
||||
Argument<T> arg = null;
|
||||
switch (getType())
|
||||
{
|
||||
case LONG -> {
|
||||
arg = (Argument<T>) new LongArgument(name, (long)getValue());
|
||||
break;
|
||||
}
|
||||
case STRING -> {
|
||||
arg = (Argument<T>) new StringArgument(name, (String)getValue());
|
||||
break;
|
||||
}
|
||||
case BOOLEAN -> {
|
||||
try{
|
||||
|
||||
if(getType() == ArgumentType.LONG)
|
||||
{
|
||||
arg = (Argument<T>) new LongArgument(name, getAsLong().getValue());
|
||||
} else if(getType() == ArgumentType.STRING)
|
||||
{
|
||||
arg = (Argument<T>) new StringArgument(name, getAsString().getValue());
|
||||
} else if(getType() == ArgumentType.BOOLEAN) {
|
||||
arg = (Argument<T>) new BooleanArgument(name);
|
||||
break;
|
||||
}
|
||||
case INTEGER -> {
|
||||
arg = (Argument<T>) new IntegerArgument(name, (int)getValue());
|
||||
break;
|
||||
} else if(getType() == ArgumentType.INTEGER){
|
||||
arg = (Argument<T>) new IntegerArgument(name, getAsInteger().getValue());
|
||||
}
|
||||
}catch (WrongArgumentTypeException ex)
|
||||
{
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
return arg;
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
package dev.zontreck.ariaslib.exceptions;
|
||||
|
||||
|
||||
public class WrongArgumentTypeException extends Exception
|
||||
{
|
||||
|
||||
}
|
|
@ -25,8 +25,8 @@ public class ProgressBar
|
|||
|
||||
/**
|
||||
* Build a progress bar
|
||||
* <br/><br/>
|
||||
* your text here [=========> ] 40% your text here
|
||||
* <br><br>
|
||||
* your text here [========= ] 40% your text here
|
||||
* @param percent The percentage
|
||||
* @param beforeText
|
||||
* @param afterText
|
||||
|
|
Loading…
Reference in a new issue