修改类结构
This commit is contained in:
parent
c8099d90bd
commit
a6ae930598
|
|
@ -20,33 +20,6 @@ public abstract class AbstractInstruction implements Instruction {
|
||||||
*/
|
*/
|
||||||
private Instruction alwaysNextInstruction;
|
private Instruction alwaysNextInstruction;
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean canExecute(InstructionContext context) {
|
|
||||||
// 默认可以执行
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public CallbackConfig getMethodCallbackConfig(InstructionContext context) {
|
|
||||||
// 默认不需要方法回调
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public CallbackConfig getStateCallbackConfig(InstructionContext context) {
|
|
||||||
// 默认不需要状态回调
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public long getTimeoutMs() {
|
|
||||||
return 60000; // 默认60秒
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onComplete(InstructionContext context, InstructionResult result) {
|
|
||||||
// 默认空实现
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Instruction getOnSuccessInstruction() {
|
public Instruction getOnSuccessInstruction() {
|
||||||
|
|
|
||||||
|
|
@ -17,12 +17,15 @@ public interface Instruction {
|
||||||
/**
|
/**
|
||||||
* a. 判断是否可以执行该指令
|
* a. 判断是否可以执行该指令
|
||||||
*/
|
*/
|
||||||
boolean canExecute(InstructionContext context);
|
default boolean canExecute(InstructionContext context){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* b. 执行远程调用(如MQTT发送)
|
* b. 执行远程调用(如MQTT发送)
|
||||||
*/
|
*/
|
||||||
void executeRemoteCall(InstructionContext context) throws Exception;
|
default void executeRemoteCall(InstructionContext context) throws Exception{
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* c. 获取方法回调配置(可选)
|
* c. 获取方法回调配置(可选)
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,10 @@ package com.tuoheng.machine.vendor.dji;
|
||||||
|
|
||||||
import com.tuoheng.machine.command.CommandType;
|
import com.tuoheng.machine.command.CommandType;
|
||||||
import com.tuoheng.machine.command.Transaction;
|
import com.tuoheng.machine.command.Transaction;
|
||||||
|
import com.tuoheng.machine.instruction.AbstractInstruction;
|
||||||
|
import com.tuoheng.machine.instruction.CallbackConfig;
|
||||||
|
import com.tuoheng.machine.instruction.Instruction;
|
||||||
|
import com.tuoheng.machine.instruction.InstructionContext;
|
||||||
import com.tuoheng.machine.state.*;
|
import com.tuoheng.machine.state.*;
|
||||||
import com.tuoheng.machine.vendor.VendorConfig;
|
import com.tuoheng.machine.vendor.VendorConfig;
|
||||||
import com.tuoheng.machine.vendor.dji.instruction.*;
|
import com.tuoheng.machine.vendor.dji.instruction.*;
|
||||||
|
|
@ -82,7 +86,8 @@ public class DjiVendorConfig implements VendorConfig {
|
||||||
Transaction takeOffTransaction = new Transaction("起飞", CommandType.TAKE_OFF)
|
Transaction takeOffTransaction = new Transaction("起飞", CommandType.TAKE_OFF)
|
||||||
.root(new DjiTakeOffInstruction())
|
.root(new DjiTakeOffInstruction())
|
||||||
.setTimeout(10000);
|
.setTimeout(10000);
|
||||||
transactionMap.put(CommandType.TAKE_OFF, takeOffTransaction);
|
transactionMap.put(takeOffTransaction.getCommandType(), takeOffTransaction);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
log.info("大疆厂家配置初始化完成,共配置{}个命令", transactionMap.size());
|
log.info("大疆厂家配置初始化完成,共配置{}个命令", transactionMap.size());
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue