44import com .lts .job .client .domain .JobClientNode ;
55import com .lts .job .client .domain .Response ;
66import com .lts .job .client .domain .ResponseCode ;
7+ import com .lts .job .client .support .JobSubmitProtectException ;
78import com .lts .job .core .domain .Job ;
8- import com .lts .job .core .exception .JobSubmitException ;
99import com .lts .job .core .support .RetryScheduler ;
1010
1111import java .util .Arrays ;
@@ -49,22 +49,30 @@ protected void innerStop() {
4949 }
5050
5151 @ Override
52- public Response submitJob (Job job ) throws JobSubmitException {
52+ public Response submitJob (Job job ) {
5353 return submitJob (Arrays .asList (job ));
5454 }
5555
5656 @ Override
57- public Response submitJob (List <Job > jobs ) throws JobSubmitException {
58- Response response = superSubmitJob (jobs );
59-
57+ public Response submitJob (List <Job > jobs ) {
58+ Response response ;
59+ try {
60+ response = superSubmitJob (jobs );
61+ } catch (JobSubmitProtectException e ) {
62+ response = new Response ();
63+ response .setSuccess (true );
64+ response .setFailedJobs (jobs );
65+ response .setCode (ResponseCode .SUBMIT_TOO_BUSY_AND_SAVE_FOR_LATER );
66+ response .setMsg (response .getMsg () + ", submit too busy , save local fail store and send later !" );
67+ }
6068 if (!response .isSuccess ()) {
6169 try {
6270 for (Job job : response .getFailedJobs ()) {
6371 retryScheduler .inSchedule (job .getTaskId (), job );
6472 }
6573 response .setSuccess (true );
66- response .setCode (ResponseCode .FAILED_AND_SAVE_FILE );
67- response .setMsg (response .getMsg () + ", but save local fail store and send later !" );
74+ response .setCode (ResponseCode .SUBMIT_FAILED_AND_SAVE_FOR_LATER );
75+ response .setMsg (response .getMsg () + ", save local fail store and send later !" );
6876 } catch (Exception e ) {
6977 response .setSuccess (false );
7078 response .setMsg (e .getMessage ());
@@ -74,7 +82,7 @@ public Response submitJob(List<Job> jobs) throws JobSubmitException {
7482 return response ;
7583 }
7684
77- private Response superSubmitJob (List <Job > jobs ) throws JobSubmitException {
85+ private Response superSubmitJob (List <Job > jobs ) {
7886 return super .submitJob (jobs );
7987 }
8088}
0 commit comments