package com.temenos.interaction.rimdsl.rim; import java.util.HashMap; import java.util.Map; import org.eclipse.emf.common.util.EList; import com.temenos.interaction.rimdsl.rim.Event; import com.temenos.interaction.rimdsl.rim.RimFactory; /** * Constructs events and add to the list. * * @author aphethean * */ public class EventFactory { private final static String GET_EVENT = "GET"; private final static String POST_EVENT = "POST"; private Map<String, Event> eventMap = new HashMap<String, Event>(); private EList<Event> modelReferences; public EventFactory(EList<Event> modelReferences) { this.modelReferences = modelReferences; } public Event createGET() { if (eventMap.get(GET_EVENT) == null) { Event event = RimFactory.eINSTANCE.createEvent(); event.setHttpMethod("GET"); event.setName(GET_EVENT); modelReferences.add(event); eventMap.put(GET_EVENT, event); } return eventMap.get(GET_EVENT); } public Event createPOST() { if (eventMap.get(POST_EVENT) == null) { Event event = RimFactory.eINSTANCE.createEvent(); event.setHttpMethod("POST"); event.setName(POST_EVENT); modelReferences.add(event); eventMap.put(POST_EVENT, event); } return eventMap.get(POST_EVENT); } }