| | package graphicalrefactor.actions; |
---|
| | |
---|
| | import java.awt.event.ActionEvent; |
---|
| | |
---|
| | import javax.swing.JOptionPane; |
---|
| | |
---|
| | import algorithms.NecessityOfStoringResourceStates; |
---|
| | import algorithms.SelectableDataTransfers; |
---|
| | import graphicalrefactor.editor.Editor; |
---|
| | import models.dataFlowModel.DataFlowModel; |
---|
| | import models.dataFlowModel.DataflowChannelGenerator; |
---|
| | import models.dataFlowModel.ResourceDependencyGraph; |
---|
| | |
---|
| | public class NewIOChannelAction extends AbstractEditorAction { |
---|
| | |
---|
| | /** |
---|
| | * |
---|
| | */ |
---|
| | private static final long serialVersionUID = -1657072017390171313L; |
---|
| | |
---|
| | public NewIOChannelAction(Editor editor) { |
---|
| | super("New I/O Channel", editor); |
---|
| | } |
---|
| | |
---|
| | @Override |
---|
| | public void actionPerformed(ActionEvent e) { |
---|
| | DataFlowModel model = editor.getModel(); |
---|
| | if(model == null) { |
---|
| | model = new DataFlowModel(); |
---|
| | editor.setModel(model); |
---|
| | } |
---|
| | String channelName = JOptionPane.showInputDialog("I/O Channel Name:"); |
---|
| | if (channelName == null) return; |
---|
| | model.addIOChannelGenerator(new DataflowChannelGenerator(channelName)); |
---|
| | ResourceDependencyGraph resourceGraph = NecessityOfStoringResourceStates.doDecide(model); |
---|
| | ResourceDependencyGraph resourceDependecyGraph = SelectableDataTransfers.init(resourceGraph); |
---|
| | editor.setResourceDependencyGraph(resourceDependecyGraph); |
---|
| | editor.constructGraph(model, resourceDependecyGraph); |
---|
| | } |
---|
| | |
---|
| | } |
---|
| | |
---|
| | |