Wenjun Ruan
2 years ago
committed by
GitHub
50 changed files with 683 additions and 135 deletions
@ -0,0 +1,23 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.apache.dolphinscheduler.api.service; |
||||
|
||||
public interface TaskDefinitionLogService { |
||||
|
||||
void deleteTaskByWorkflowDefinitionCode(long workflowDefinitionCode); |
||||
} |
@ -0,0 +1,61 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.apache.dolphinscheduler.api.service.impl; |
||||
|
||||
import org.apache.dolphinscheduler.api.service.TaskDefinitionLogService; |
||||
import org.apache.dolphinscheduler.dao.entity.ProcessTaskRelation; |
||||
import org.apache.dolphinscheduler.dao.entity.ProcessTaskRelationLog; |
||||
import org.apache.dolphinscheduler.dao.repository.ProcessTaskRelationLogDao; |
||||
import org.apache.dolphinscheduler.dao.repository.TaskDefinitionLogDao; |
||||
|
||||
import org.apache.commons.collections4.CollectionUtils; |
||||
|
||||
import java.util.HashSet; |
||||
import java.util.List; |
||||
import java.util.Set; |
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired; |
||||
import org.springframework.stereotype.Component; |
||||
|
||||
@Component |
||||
public class TaskDefinitionLogServiceImpl implements TaskDefinitionLogService { |
||||
|
||||
@Autowired |
||||
private ProcessTaskRelationLogDao processTaskRelationLogDao; |
||||
|
||||
@Autowired |
||||
private TaskDefinitionLogDao taskDefinitionLogDao; |
||||
|
||||
@Override |
||||
public void deleteTaskByWorkflowDefinitionCode(long workflowDefinitionCode) { |
||||
List<ProcessTaskRelationLog> processTaskRelations = |
||||
processTaskRelationLogDao.findByWorkflowDefinitionCode(workflowDefinitionCode); |
||||
if (CollectionUtils.isEmpty(processTaskRelations)) { |
||||
return; |
||||
} |
||||
// delete task definition
|
||||
Set<Long> needToDeleteTaskDefinitionCodes = new HashSet<>(); |
||||
for (ProcessTaskRelation processTaskRelation : processTaskRelations) { |
||||
needToDeleteTaskDefinitionCodes.add(processTaskRelation.getPreTaskCode()); |
||||
needToDeleteTaskDefinitionCodes.add(processTaskRelation.getPostTaskCode()); |
||||
} |
||||
taskDefinitionLogDao.deleteByTaskDefinitionCodes(needToDeleteTaskDefinitionCodes); |
||||
// delete task workflow relation
|
||||
processTaskRelationLogDao.deleteByWorkflowDefinitionCode(workflowDefinitionCode); |
||||
} |
||||
} |
@ -0,0 +1,23 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.apache.dolphinscheduler.dao.repository; |
||||
|
||||
public interface DqExecuteResultDao { |
||||
|
||||
void deleteByWorkflowInstanceId(Integer workflowInstanceId); |
||||
} |
@ -0,0 +1,23 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.apache.dolphinscheduler.dao.repository; |
||||
|
||||
public interface ProcessDefinitionLogDao { |
||||
|
||||
void deleteByWorkflowDefinitionCode(long workflowDefinitionCode); |
||||
} |
@ -0,0 +1,29 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.apache.dolphinscheduler.dao.repository; |
||||
|
||||
import org.apache.dolphinscheduler.dao.entity.ProcessTaskRelationLog; |
||||
|
||||
import java.util.List; |
||||
|
||||
public interface ProcessTaskRelationLogDao { |
||||
|
||||
List<ProcessTaskRelationLog> findByWorkflowDefinitionCode(long workflowDefinitionCode); |
||||
|
||||
void deleteByWorkflowDefinitionCode(long workflowDefinitionCode); |
||||
} |
@ -0,0 +1,36 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.apache.dolphinscheduler.dao.repository.impl; |
||||
|
||||
import org.apache.dolphinscheduler.dao.mapper.DqExecuteResultMapper; |
||||
import org.apache.dolphinscheduler.dao.repository.DqExecuteResultDao; |
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired; |
||||
import org.springframework.stereotype.Repository; |
||||
|
||||
@Repository |
||||
public class DqExecuteResultDaoImpl implements DqExecuteResultDao { |
||||
|
||||
@Autowired |
||||
private DqExecuteResultMapper dqExecuteResultMapper; |
||||
|
||||
@Override |
||||
public void deleteByWorkflowInstanceId(Integer workflowInstanceId) { |
||||
dqExecuteResultMapper.deleteByWorkflowInstanceId(workflowInstanceId); |
||||
} |
||||
} |
@ -0,0 +1,36 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.apache.dolphinscheduler.dao.repository.impl; |
||||
|
||||
import org.apache.dolphinscheduler.dao.mapper.ProcessDefinitionLogMapper; |
||||
import org.apache.dolphinscheduler.dao.repository.ProcessDefinitionLogDao; |
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired; |
||||
import org.springframework.stereotype.Repository; |
||||
|
||||
@Repository |
||||
public class ProcessDefinitionLogDaoImpl implements ProcessDefinitionLogDao { |
||||
|
||||
@Autowired |
||||
private ProcessDefinitionLogMapper processDefinitionLogMapper; |
||||
|
||||
@Override |
||||
public void deleteByWorkflowDefinitionCode(long workflowDefinitionCode) { |
||||
processDefinitionLogMapper.deleteByProcessDefinitionCode(workflowDefinitionCode); |
||||
} |
||||
} |
@ -0,0 +1,44 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.apache.dolphinscheduler.dao.repository.impl; |
||||
|
||||
import org.apache.dolphinscheduler.dao.entity.ProcessTaskRelationLog; |
||||
import org.apache.dolphinscheduler.dao.mapper.ProcessTaskRelationLogMapper; |
||||
import org.apache.dolphinscheduler.dao.repository.ProcessTaskRelationLogDao; |
||||
|
||||
import java.util.List; |
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired; |
||||
import org.springframework.stereotype.Repository; |
||||
|
||||
@Repository |
||||
public class ProcessTaskRelationLogDaoImpl implements ProcessTaskRelationLogDao { |
||||
|
||||
@Autowired |
||||
private ProcessTaskRelationLogMapper processTaskRelationLogMapper; |
||||
|
||||
@Override |
||||
public List<ProcessTaskRelationLog> findByWorkflowDefinitionCode(long workflowDefinitionCode) { |
||||
return processTaskRelationLogMapper.queryByProcessCode(workflowDefinitionCode); |
||||
} |
||||
|
||||
@Override |
||||
public void deleteByWorkflowDefinitionCode(long workflowDefinitionCode) { |
||||
processTaskRelationLogMapper.deleteByWorkflowDefinitionCode(workflowDefinitionCode); |
||||
} |
||||
} |
Loading…
Reference in new issue