XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEServerManager

【Java】我的世界XFE服务器管理器

公开
关注 0 Fork 0 Star 0
UTF-8
package com.xfestudio.xfeservermanager.api.spi;

import com.xfestudio.xfeservermanager.api.command.CommandAnalysisRequest;
import com.xfestudio.xfeservermanager.api.command.CommandNames;
import com.xfestudio.xfeservermanager.api.command.InvocationAst;
import java.util.Optional;

/** Adds argument-level semantics for commands unknown to the built-in platform adapter. */
public interface CommandSemanticAdapter {
    boolean supports(String canonicalCommandId);

    Optional<InvocationAst> analyze(CommandAnalysisRequest request) throws SemanticAnalysisException;

    default int priority() {
        return 0;
    }

    default boolean supportsRaw(String commandId) {
        return supports(CommandNames.canonicalize(commandId));
    }
}