Search in sources :

Example 11 with Item

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);
    }
}
Also used : Item(org.talend.core.model.properties.Item) TableItem(org.eclipse.swt.widgets.TableItem) IProgressMonitor(org.eclipse.core.runtime.IProgressMonitor) RepositoryObject(org.talend.core.model.repository.RepositoryObject) ProgressMonitorDialog(org.eclipse.jface.dialogs.ProgressMonitorDialog) PersistenceException(org.talend.commons.exception.PersistenceException) ERepositoryObjectType(org.talend.core.model.repository.ERepositoryObjectType) InvocationTargetException(java.lang.reflect.InvocationTargetException) IRunnableWithProgress(org.eclipse.jface.operation.IRunnableWithProgress) HashSet(java.util.HashSet)

Example 12 with Item

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;
}
Also used : IJobletProviderService(org.talend.core.ui.IJobletProviderService) Item(org.talend.core.model.properties.Item) JobletProcessItem(org.talend.core.model.properties.JobletProcessItem) JobletProcessItem(org.talend.core.model.properties.JobletProcessItem) Node(org.talend.designer.core.ui.editor.nodes.Node) NodeContainer(org.talend.designer.core.ui.editor.nodecontainer.NodeContainer) AbstractJobletContainer(org.talend.designer.core.ui.editor.jobletcontainer.AbstractJobletContainer)

Example 13 with Item

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);
        }
    }
}
Also used : ProcessItem(org.talend.core.model.properties.ProcessItem) Item(org.talend.core.model.properties.Item) PersistenceException(org.talend.commons.exception.PersistenceException) PartInitException(org.eclipse.ui.PartInitException) ERepositoryObjectType(org.talend.core.model.repository.ERepositoryObjectType) IJobEditorHandler(org.talend.core.ui.editor.IJobEditorHandler)

Example 14 with Item

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);
}
Also used : Project(org.talend.core.model.general.Project) ProcessItem(org.talend.core.model.properties.ProcessItem) Item(org.talend.core.model.properties.Item) INode(org.talend.core.model.process.INode) ProcessItem(org.talend.core.model.properties.ProcessItem) IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject) PersistenceException(org.talend.commons.exception.PersistenceException) ArrayList(java.util.ArrayList) List(java.util.List) IDesignerCoreService(org.talend.designer.core.IDesignerCoreService) IProcess(org.talend.core.model.process.IProcess) IProxyRepositoryFactory(org.talend.repository.model.IProxyRepositoryFactory)

Example 15 with Item

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();
            }
        }
    }
}
Also used : NodeContainerPart(org.talend.designer.core.ui.editor.nodecontainer.NodeContainerPart) HashMap(java.util.HashMap) INode(org.talend.core.model.process.INode) RepositoryNode(org.talend.repository.model.RepositoryNode) HL7FileNode(org.talend.core.model.metadata.builder.connection.HL7FileNode) IRepositoryNode(org.talend.repository.model.IRepositoryNode) Node(org.talend.designer.core.ui.editor.nodes.Node) IExternalNode(org.talend.core.model.process.IExternalNode) XMLFileNode(org.talend.core.model.metadata.builder.connection.XMLFileNode) MapperExternalNode(org.talend.core.model.process.node.MapperExternalNode) NodeContainer(org.talend.designer.core.ui.editor.nodecontainer.NodeContainer) SQLPatternItem(org.talend.core.model.properties.SQLPatternItem) RepositoryNode(org.talend.repository.model.RepositoryNode) IRepositoryNode(org.talend.repository.model.IRepositoryNode) ValidationRulesConnectionItem(org.talend.core.model.properties.ValidationRulesConnectionItem) JobletProcessItem(org.talend.core.model.properties.JobletProcessItem) ConnectionItem(org.talend.core.model.properties.ConnectionItem) MDMConnectionItem(org.talend.core.model.properties.MDMConnectionItem) SQLPatternItem(org.talend.core.model.properties.SQLPatternItem) LinkRulesItem(org.talend.core.model.properties.LinkRulesItem) SAPConnectionItem(org.talend.core.model.properties.SAPConnectionItem) ProcessItem(org.talend.core.model.properties.ProcessItem) ContextItem(org.talend.core.model.properties.ContextItem) Item(org.talend.core.model.properties.Item) DatabaseConnectionItem(org.talend.core.model.properties.DatabaseConnectionItem) EbcdicConnectionItem(org.talend.core.model.properties.EbcdicConnectionItem) RulesItem(org.talend.core.model.properties.RulesItem) HL7ConnectionItem(org.talend.core.model.properties.HL7ConnectionItem) FileItem(org.talend.core.model.properties.FileItem) IElementParameter(org.talend.core.model.process.IElementParameter) SAPFunctionRepositoryObject(org.talend.core.repository.model.repositoryObject.SAPFunctionRepositoryObject) IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject) QueryRepositoryObject(org.talend.core.repository.model.repositoryObject.QueryRepositoryObject) MetadataTableRepositoryObject(org.talend.core.repository.model.repositoryObject.MetadataTableRepositoryObject) SalesforceModuleRepositoryObject(org.talend.core.repository.model.repositoryObject.SalesforceModuleRepositoryObject) MetadataColumnRepositoryObject(org.talend.core.repository.model.repositoryObject.MetadataColumnRepositoryObject) SAPIDocRepositoryObject(org.talend.core.repository.model.repositoryObject.SAPIDocRepositoryObject) ArrayList(java.util.ArrayList) List(java.util.List) EList(org.eclipse.emf.common.util.EList) Property(org.talend.core.model.properties.Property) Map(java.util.Map) HashMap(java.util.HashMap)

Aggregations

Item (org.talend.core.model.properties.Item)423 IRepositoryViewObject (org.talend.core.model.repository.IRepositoryViewObject)189 Property (org.talend.core.model.properties.Property)117 ConnectionItem (org.talend.core.model.properties.ConnectionItem)114 PersistenceException (org.talend.commons.exception.PersistenceException)110 ProcessItem (org.talend.core.model.properties.ProcessItem)94 ArrayList (java.util.ArrayList)76 IProxyRepositoryFactory (org.talend.repository.model.IProxyRepositoryFactory)69 RepositoryNode (org.talend.repository.model.RepositoryNode)65 ContainerItem (org.talend.mdm.repository.model.mdmproperties.ContainerItem)59 ERepositoryObjectType (org.talend.core.model.repository.ERepositoryObjectType)54 IFile (org.eclipse.core.resources.IFile)53 IPath (org.eclipse.core.runtime.IPath)51 Connection (org.talend.core.model.metadata.builder.connection.Connection)44 DatabaseConnectionItem (org.talend.core.model.properties.DatabaseConnectionItem)42 MDMServerObjectItem (org.talend.mdm.repository.model.mdmproperties.MDMServerObjectItem)42 DatabaseConnection (org.talend.core.model.metadata.builder.connection.DatabaseConnection)41 FolderItem (org.talend.core.model.properties.FolderItem)39 JobletProcessItem (org.talend.core.model.properties.JobletProcessItem)39 IElementParameter (org.talend.core.model.process.IElementParameter)37