<commit_before>/**
 * Copyright 1996-2014 FoxBPM Co.,Ltd.
 *
 * Licensed 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.
 * 
 * @author kenshin
 */
package org.foxbpm.engine.impl.bpmn.parser.model;

import java.util.List;

import org.eclipse.bpmn2.BaseElement;
import org.eclipse.bpmn2.CatchEvent;
import org.eclipse.bpmn2.EventDefinition;
import org.eclipse.bpmn2.FormalExpression;
import org.eclipse.bpmn2.TimerEventDefinition;
import org.foxbpm.engine.impl.bpmn.behavior.BaseElementBehavior;
import org.foxbpm.engine.impl.bpmn.behavior.CatchEventBehavior;

public class CatchEventParser extends EventParser {
	
	@Override
	public BaseElementBehavior parser(BaseElement baseElement) {
		
		CatchEventBehavior catchEventBehavior=(CatchEventBehavior)baseElementBehavior;
		
		
		

		CatchEvent catchEvent=(CatchEvent)baseElement;
		List<EventDefinition> eventDefinitions = catchEvent.getEventDefinitions();
		for (EventDefinition eventDefinition : eventDefinitions) {
			
			
			if(eventDefinition instanceof TimerEventDefinition){
				org.foxbpm.engine.impl.bpmn.behavior.TimerEventDefinition timerEventDefinitionNew=new org.foxbpm.engine.impl.bpmn.behavior.TimerEventDefinition();
				
				TimerEventDefinition timerEventDefinition=(TimerEventDefinition)eventDefinition;
				timerEventDefinitionNew.setId(timerEventDefinition.getId());
				timerEventDefinitionNew.setTimeCycle(timerEventDefinition.getTimeCycle()!=null?((FormalExpression)timerEventDefinition.getTimeCycle()).getBody():null);
				timerEventDefinitionNew.setTimeDate(timerEventDefinition.getTimeCycle()!=null?((FormalExpression)timerEventDefinition.getTimeDate()).getBody():null);
				timerEventDefinitionNew.setTimeDuration(timerEventDefinition.getTimeCycle()!=null?((FormalExpression)timerEventDefinition.getTimeDuration()).getBody():null);
				catchEventBehavior.getEventDefinitions().add(timerEventDefinitionNew);
			}
			
			
		}

		
		return super.parser(baseElement);
	}
	
}<commit_msg>修复了时间事件定义不加载的问题<commit_after>/**
 * Copyright 1996-2014 FoxBPM Co.,Ltd.
 *
 * Licensed 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.
 * 
 * @author kenshin
 */
package org.foxbpm.engine.impl.bpmn.parser.model;

import java.util.List;

import org.eclipse.bpmn2.BaseElement;
import org.eclipse.bpmn2.CatchEvent;
import org.eclipse.bpmn2.EventDefinition;
import org.eclipse.bpmn2.FormalExpression;
import org.eclipse.bpmn2.TimerEventDefinition;
import org.foxbpm.engine.impl.bpmn.behavior.BaseElementBehavior;
import org.foxbpm.engine.impl.bpmn.behavior.CatchEventBehavior;

public class CatchEventParser extends EventParser {
	
	@Override
	public BaseElementBehavior parser(BaseElement baseElement) {
		
		CatchEventBehavior catchEventBehavior=(CatchEventBehavior)baseElementBehavior;
		
		
		

		CatchEvent catchEvent=(CatchEvent)baseElement;
		List<EventDefinition> eventDefinitions = catchEvent.getEventDefinitions();
		for (EventDefinition eventDefinition : eventDefinitions) {
			
			
			if(eventDefinition instanceof TimerEventDefinition){
				org.foxbpm.engine.impl.bpmn.behavior.TimerEventDefinition timerEventDefinitionNew=new org.foxbpm.engine.impl.bpmn.behavior.TimerEventDefinition();
				
				TimerEventDefinition timerEventDefinition=(TimerEventDefinition)eventDefinition;
				timerEventDefinitionNew.setId(timerEventDefinition.getId());
				timerEventDefinitionNew.setTimeCycle(timerEventDefinition.getTimeCycle()!=null?((FormalExpression)timerEventDefinition.getTimeCycle()).getBody():null);
				timerEventDefinitionNew.setTimeDate(timerEventDefinition.getTimeDate()!=null?((FormalExpression)timerEventDefinition.getTimeDate()).getBody():null);
				timerEventDefinitionNew.setTimeDuration(timerEventDefinition.getTimeDuration()!=null?((FormalExpression)timerEventDefinition.getTimeDuration()).getBody():null);
				catchEventBehavior.getEventDefinitions().add(timerEventDefinitionNew);
			}
			
			
		}

		
		return super.parser(baseElement);
	}
	
}
{'fraction_non_alphanumeric': 0.09268292682926829, 'fraction_numerical': 0.006910569105691057, 'mean_word_length': 5.7689133425034385, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6894478', 'n_tokens_mistral': 1519, 'n_tokens_neox': 1358, 'n_words': 278}