class RuleEngineExecuteEventInfo {
    private String id;

    private String event;

    private long createTime = System.currentTimeMillis();

    private String instanceId;

    private String nodeId;

    private String ruleData;

    private String contextId;

    public static RuleEngineExecuteEventInfo of(TopicPayload message) {<FILL_FUNCTION_BODY>}
}

        Map<String, String> vars = message.getTopicVars("/rule-engine/{instanceId}/{nodeId}/event/{event}");
        RuleEngineExecuteEventInfo info = FastBeanCopier.copy(vars, new RuleEngineExecuteEventInfo());
        JSONObject json = message.bodyToJson();
        info.id=json.getString("id");
        info.contextId=json.getString("contextId");
        info.setRuleData(json.toJSONString());
        return info;
    
<no_super_class>