RequiredArg class

Пакет: com.hypixel.hytale.server.core.command.system.arguments.system

Файл: com/hypixel/hytale/server/core/command/system/arguments/system/RequiredArg.java

extends: Argument<RequiredArg<DataType>, DataType>

Методы (2)

МодификаторыВозвратСигнатура
abstract throw new IllegalArgumentExceptionthrow new IllegalArgumentException("Cannot create a Required Argument with 0 parameters.")
abstract super super(var1, var2, var3, var4)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.command.system.arguments.system;

class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.command.system.AbstractCommand;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.ArgumentType;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class RequiredArg<DataType> class="kw">extends Argument<RequiredArg<DataType>, DataType> {
   @Nullable
   class="kw">private ArgumentType<?> suggestionOverrideType;

   class="kw">public RequiredArg(@Nonnull AbstractCommand var1, @Nonnull String var2, @Nonnull String var3, @Nonnull ArgumentType<DataType> var4) {
      super(var1, var2, var3, var4);
      if (var4.getNumberOfParameters() < 1) {
         throw new IllegalArgumentException("Cannot create a Required Argument with 0 parameters.");
      }
   }

   @Nonnull
   class="kw">public RequiredArg<DataType> withSuggestionOverride(@Nonnull ArgumentType<?> var1) {
      this.suggestionOverrideType = var1;
      class="kw">return this;
   }

   @Nullable
   class="kw">public ArgumentType<?> getSuggestionOverrideType() {
      class="kw">return this.suggestionOverrideType;
   }

   @Nonnull
   class="kw">public Message getUsageMessageWithoutDescription() {
      class="kw">return Message.raw("<").insert(this.getName()).insert(":").insert(this.getArgumentType().getName()).insert(">");
   }

   @Nonnull
   @Override
   class="kw">public Message getUsageMessage() {
      class="kw">return Message.raw(this.getName())
         .insert(" (")
         .insert(this.getArgumentType().getName())
         .insert(") -> \"")
         .insert(Message.translation(this.getDescription()))
         .insert("\"");
   }

   @Nonnull
   @Override
   class="kw">public Message getUsageOneLiner() {
      class="kw">return Message.raw("<").insert(this.getName()).insert(">");
   }

   @Nonnull
   class="kw">protected RequiredArg<DataType> getThis() {
      class="kw">return this;
   }
}