Class SingleArgumentProcessor<T>

    • Method Detail

      • getObjectStream

        protected abstract Stream<T> getObjectStream()
      • getArgumentValue

        protected abstract String getArgumentValue​(T object)
      • getValue

        protected abstract String getValue​(String query,
                                           UUID uuid,
                                           T object)
      • process

        public Optional<String[]> process​(UUID uuid,
                                          String[] args)
        Description copied from interface: ArgumentProcessor
        Process the arguments
        Parameters:
        uuid - the UUID of the player
        args - the arguments
        Returns:
        the remaining arguments, or empty if the arguments are invalid
      • getValue

        public String getValue​(String query,
                               UUID uuid)
        Description copied from interface: ArgumentProcessor
        Get the value
        Parameters:
        query - the query
        uuid - the UUID of the player
        Returns:
        the value
      • tabComplete

        public Pair<Optional<List<String>>,​String[]> tabComplete​(UUID uuid,
                                                                       String[] args)
        Description copied from interface: ArgumentProcessor
        Get the tab complete for the arguments
        Parameters:
        uuid - the UUID of the player
        args - the arguments
        Returns:
        A pair of the optional suggestions and the remaining arguments. The optional suggestions can be null if the processor should be skipped, then the remaining arguments will be used for the next processor