use of org.talend.core.model.properties.Item in project tdi-studio-se by Talend.
the class StatusManagerSettingPage method updateItemsVersion.
private void updateItemsVersion() {
IRunnableWithProgress runnable = new IRunnableWithProgress() {
@Override
public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
//$NON-NLS-1$
monitor.beginTask("", getModifiedVersionItems().size() * 100);
Set<ERepositoryObjectType> types = new HashSet<ERepositoryObjectType>();
for (RepositoryObject object : getModifiedVersionItems()) {
// IRepositoryViewObject repositoryObject = object.getRepositoryNode().getObject();
if (object != null && object.getProperty() != null) {
if (object.getStatusCode().equals(object.getProperty().getStatusCode())) {
final Item item = object.getProperty().getItem();
item.getProperty().setOldStatusCode(object.getStatusCode());
// types.add(object.getRepositoryNode().getObjectType());
try {
// }
if (object != null) {
// obj.setVersion(object.getNewVersion());
FACTORY.save(project, object.getProperty());
} else {
// FACTORY.save(project, item.getProperty());
}
} catch (PersistenceException e) {
ExceptionHandler.process(e);
}
}
}
monitor.worked(100);
}
// RepositoryManager.refresh(types);
monitor.done();
}
};
// final ProgressMonitorJobsDialog dialog = new ProgressMonitorJobsDialog(null);
final ProgressMonitorDialog dialog = new ProgressMonitorDialog(null);
try {
dialog.run(false, false, runnable);
} catch (InvocationTargetException e) {
ExceptionHandler.process(e);
} catch (InterruptedException e) {
ExceptionHandler.process(e);
}
}
use of org.talend.core.model.properties.Item in project tdi-studio-se by Talend.
the class GEFPasteAction method canPasteJobletNode.
private boolean canPasteJobletNode(IProcess2 curNodeProcess, Node copiedNode) {
Item temIten = curNodeProcess.getProperty().getItem();
if (!(temIten instanceof JobletProcessItem)) {
IJobletProviderService service = (IJobletProviderService) GlobalServiceRegister.getDefault().getService(IJobletProviderService.class);
if (service != null) {
if (service.isJobletInOutComponent(copiedNode)) {
MessageDialog.openConfirm(Display.getDefault().getActiveShell(), "Paste Error", "Can not paste joblet component in job!");
return false;
}
}
}
Node jobletNode = (Node) copiedNode.getJobletNode();
AbstractJobletContainer jnc = (AbstractJobletContainer) jobletNode.getNodeContainer();
List<NodeContainer> ncs = jnc.getNodeContainers();
if (ncs != null) {
for (NodeContainer nc : ncs) {
if (nc.getNode() == copiedNode) {
return true;
}
}
}
return false;
}
use of org.talend.core.model.properties.Item in project tdi-studio-se by Talend.
the class ComponentSearcher method openEditorOperation.
public void openEditorOperation(RepositoryNode repositoryNode) {
if (repositoryNode != null && repositoryNode.getObject() != null && repositoryNode.getObject().getProperty() != null && repositoryNode.getObject().getProperty().getItem() != null) {
Item item = repositoryNode.getObject().getProperty().getItem();
try {
ERepositoryObjectType repObjType = ERepositoryObjectType.getItemType(item);
IJobEditorHandler editorInputFactory = JobEditorHandlerManager.getInstance().extractEditorInputFactory(repObjType.getType());
editorInputFactory.openJobEditor(editorInputFactory.createJobEditorInput(item, true));
} catch (PartInitException e) {
ExceptionHandler.process(e);
} catch (PersistenceException e) {
ExceptionHandler.process(e);
}
}
}
use of org.talend.core.model.properties.Item in project tdi-studio-se by Talend.
the class ComponentSearcher method search.
/**
* DOC hcw Comment method "search".
*
* @param monitor
* @param nodeName
* @param found
*/
protected void search(IProgressMonitor monitor, String nodeName, List<IRepositoryViewObject> found) {
IProxyRepositoryFactory factory = DesignerPlugin.getDefault().getProxyRepositoryFactory();
IDesignerCoreService designerCoreService = CorePlugin.getDefault().getDesignerCoreService();
try {
List<IRepositoryViewObject> repositoryObjectList = factory.getAll(ERepositoryObjectType.PROCESS, false);
repositoryObjectList.addAll(factory.getAll(ERepositoryObjectType.PROCESS_MR, false));
repositoryObjectList.addAll(factory.getAll(ERepositoryObjectType.valueOf("PROCESS_STORM"), false));
if (ProjectManager.getInstance().getReferencedProjects(ProjectManager.getInstance().getCurrentProject()).size() > 0) {
for (Project refProject : ProjectManager.getInstance().getReferencedProjects(ProjectManager.getInstance().getCurrentProject())) {
repositoryObjectList.addAll(factory.getAll(refProject, ERepositoryObjectType.PROCESS, false));
repositoryObjectList.addAll(factory.getAll(refProject, ERepositoryObjectType.PROCESS_MR, false));
repositoryObjectList.addAll(factory.getAll(refProject, ERepositoryObjectType.valueOf("PROCESS_STORM"), false));
}
}
//$NON-NLS-1$
monitor.beginTask("Searching Component in Jobs ", repositoryObjectList.size());
for (IRepositoryViewObject rObject : repositoryObjectList) {
if (monitor.isCanceled()) {
break;
}
//$NON-NLS-1$
monitor.setTaskName("Search " + rObject.getLabel());
monitor.worked(1);
Item item = rObject.getProperty().getItem();
if (item instanceof ProcessItem) {
ProcessItem processItem = (ProcessItem) item;
IProcess process = designerCoreService.getProcessFromProcessItem(processItem);
List<INode> nodes = (List<INode>) process.getGraphicalNodes();
for (INode node : nodes) {
if (node.getComponent().getName().equals(nodeName)) {
found.add(rObject);
break;
}
}
}
}
monitor.done();
} catch (PersistenceException e) {
ExceptionHandler.process(e);
}
// JobletEditorInput fileEditorInput = new JobletEditorInput(processItem, true);
// IEditorPart editorPart = page.findEditor(fileEditorInput);
}
use of org.talend.core.model.properties.Item in project tdi-studio-se by Talend.
the class ComponentChooseDialog method createSQLPattern.
private void createSQLPattern(List<Object> sourceList) {
if (sourceList.size() == 0) {
return;
}
NodeContainerPart nodePart = (NodeContainerPart) getTargetEditPart();
Object model = nodePart.getModel();
if (model instanceof NodeContainer) {
Node node = ((NodeContainer) model).getNode();
IElementParameter sqlPatternValue = node.getElementParameter(EParameterName.SQLPATTERN_VALUE.getName());
if (sqlPatternValue != null) {
boolean created = false;
for (Object source : sourceList) {
if (source instanceof RepositoryNode) {
RepositoryNode sourceNode = (RepositoryNode) source;
Item item = sourceNode.getObject().getProperty().getItem();
if (item instanceof SQLPatternItem) {
SQLPatternItem pattern = (SQLPatternItem) item;
Property property = pattern.getProperty();
String propertyId = property.getId();
String propertyLabel = property.getLabel();
List<Map> values = (List<Map>) sqlPatternValue.getValue();
Map<String, String> patternMap = new HashMap<String, String>();
boolean contains = false;
for (Map map : values) {
String compoundId = (String) map.get(SQLPatternUtils.SQLPATTERNLIST);
String id = compoundId.split(SQLPatternUtils.ID_SEPARATOR)[0];
String name = compoundId.split(SQLPatternUtils.ID_SEPARATOR)[1];
if (id.equals(propertyId) && name.equals(propertyLabel)) {
contains = true;
break;
}
}
if (!contains) {
patternMap.put(SQLPatternUtils.SQLPATTERNLIST, propertyId + SQLPatternUtils.ID_SEPARATOR + propertyLabel);
values.add(patternMap);
sqlPatternValue.setValue(values);
created = true;
}
}
}
}
if (created) {
RepositoryPlugin.getDefault().getDesignerCoreService().switchToCurComponentSettingsView();
}
}
}
}
Aggregations