public static APIDeleteLongJobMsg __example__() { APIDeleteLongJobMsg msg = new APIDeleteLongJobMsg(); msg.setUuid(uuid()); return msg; }
@Override public String getSyncSignature() { return "longjob-" + msg.getUuid(); }
@Override public void run(SyncTaskChain chain) { final APIDeleteAccountEvent evt = new APIDeleteAccountEvent(msg.getId()); LongJobVO vo = dbf.findByUuid(msg.getUuid(), LongJobVO.class); dbf.remove(vo); logger.info(String.format("longjob [uuid:%s, name:%s] has been deleted", vo.getUuid(), vo.getName())); bus.publish(evt); chain.next(); }
private void validate(APIDeleteLongJobMsg msg) { LongJobState state = Q.New(LongJobVO.class) .select(LongJobVO_.state) .eq(LongJobVO_.uuid, msg.getUuid()) .findValue(); if (state != LongJobState.Succeeded && state != LongJobState.Canceled && state != LongJobState.Failed) { throw new ApiMessageInterceptionException(argerr("delete longjob only when it's succeeded, canceled, or failed")); } }