use of org.talend.mdm.repository.core.IRepositoryNodeConfiguration in project tmdm-studio-se by Talend.
the class RepositoryViewFilterDialog method solveProcTriCase.
private void solveProcTriCase() {
IRepositoryViewObject eventMgr = null;
boolean exist = false;
for (IRepositoryViewObject conf : enabledConfigs) {
Item item = conf.getProperty().getItem();
IRepositoryNodeConfiguration repositoryConf = RepositoryNodeConfigurationManager.getConfiguration(item);
if (repositoryConf instanceof EventManagerNodeConfiguration) {
exist = true;
break;
}
if (repositoryConf instanceof IRepositoryViewObject || repositoryConf instanceof TransformerV2NodeConfiguration)
for (IRepositoryViewObject confi : allConfigs) eventMgr = confi;
}
if (eventMgr != null && !exist)
enabledConfigs.add(eventMgr);
}
use of org.talend.mdm.repository.core.IRepositoryNodeConfiguration in project tmdm-studio-se by Talend.
the class MDMRepositoryActionProvider method init.
@Override
public void init(ICommonActionExtensionSite aSite) {
CommonViewer commonViewer = (CommonViewer) aSite.getStructuredViewer();
for (IRepositoryNodeConfiguration conf : RepositoryNodeConfigurationManager.getConfigurations()) {
IRepositoryNodeActionProvider actionProvider = conf.getActionProvider();
if (actionProvider != null) {
actionProvider.setRepositoryViewGlobalActionHandler(this);
actionProvider.initCommonViewer(commonViewer);
}
}
initCommonViewerForActions(commonViewer);
}
use of org.talend.mdm.repository.core.IRepositoryNodeConfiguration in project tmdm-studio-se by Talend.
the class MDMRepositoryActionProvider method fillContextMenu.
@Override
public void fillContextMenu(IMenuManager menu) {
if (ProxyRepositoryFactory.getInstance().isUserReadOnlyOnCurrentProject()) {
return;
}
IStructuredSelection selection = (IStructuredSelection) getContext().getSelection();
List<AbstractRepositoryAction> finalActions = null;
for (Iterator il = selection.iterator(); il.hasNext(); ) {
Object obj = il.next();
if (obj instanceof IRepositoryViewObject) {
IRepositoryViewObject viewObj = (IRepositoryViewObject) obj;
IRepositoryNodeConfiguration conf = RepositoryNodeConfigurationManager.getConfiguration(viewObj);
IRepositoryNodeActionProvider actionProvider = conf.getActionProvider();
if (conf != null && actionProvider != null) {
actionProvider.updateSelection(selection);
List<AbstractRepositoryAction> actions = actionProvider.getActions(viewObj);
if (actions != null) {
if (finalActions == null) {
finalActions = actions;
}
finalActions = combineActions(finalActions, actions);
if (finalActions.size() == 0) {
return;
}
}
}
}
}
// hook action to menu
for (IAction action : finalActions) {
if (action instanceof AbstractRepositoryAction) {
AbstractRepositoryAction groupAction = (AbstractRepositoryAction) action;
groupAction.selectionChanged(selection);
if (groupAction.getGroupName() != null) {
menu.appendToGroup(groupAction.getGroupName(), action);
} else {
menu.add(action);
}
}
}
}
use of org.talend.mdm.repository.core.IRepositoryNodeConfiguration in project tmdm-studio-se by Talend.
the class MDMRepositoryLabelProvider method getLabelProvider.
protected IRepositoryNodeLabelProvider getLabelProvider(Object element) {
if (element instanceof IRepositoryViewObject) {
IRepositoryViewObject viewObject = (IRepositoryViewObject) element;
viewObject = RepositoryResourceUtil.assertViewObject(viewObject);
Property property = viewObject.getProperty();
if (property != null) {
Item item = property.getItem();
IRepositoryNodeConfiguration conf = RepositoryNodeConfigurationManager.getConfiguration(item);
if (conf != null) {
return conf.getLabelProvider();
}
}
}
return null;
}
use of org.talend.mdm.repository.core.IRepositoryNodeConfiguration in project tmdm-studio-se by Talend.
the class ImportServerObjectWizard method doImport.
public List<String> doImport(Object[] objs, IProgressMonitor monitor) {
monitor.beginTask(Messages.Import_Objects, objs.length);
List<String> importedIds = new LinkedList<String>();
ImportService.setImporting(true);
List<Integer> types = new ArrayList<Integer>();
types.add(TreeObject.CUSTOM_FORM);
types.add(TreeObject.DATA_CLUSTER);
types.add(TreeObject.DATA_MODEL);
types.add(TreeObject.TRANSFORMER);
types.add(TreeObject.ROUTING_RULE);
types.add(TreeObject.MENU);
types.add(TreeObject.ROLE);
types.add(TreeObject.STORED_PROCEDURE);
types.add(TreeObject.VIEW);
types.add(TreeObject.WORKFLOW_PROCESS);
IProxyRepositoryFactory factory = CoreRuntimePlugin.getInstance().getProxyRepositoryFactory();
for (Object obj : objs) {
try {
TreeObject treeObj = (TreeObject) obj;
monitor.subTask(treeObj.getDisplayName());
String treeObjName = treeObj.getName();
MDMServerObject eobj = handleSpecialTreeObject(treeObj);
if (treeObj.getType() == TreeObject.WORKFLOW_PROCESS) {
continue;
}
if (eobj == null) {
if (!types.contains(treeObj.getType()) || treeObj.getWsObject() == null || ("JCAAdapers".equals(treeObj.getName()) && treeObj.getType() == TreeObject.DATA_CLUSTER)) {
// $NON-NLS-1$
continue;
}
eobj = (MDMServerObject) Bean2EObjUtil.getInstance().convertFromBean2EObj(treeObj.getWsObject(), null);
}
eobj.setLastServerName(serverDef.getName());
ERepositoryObjectType type = RepositoryQueryService.getRepositoryObjectType(treeObj.getType());
String uniqueName = getUniqueName(treeObj, treeObjName);
MDMServerObjectItem item = RepositoryQueryService.findServerObjectItemByNameWithDeleted(type, uniqueName, true);
if (item != null) {
if (!isOverrideAll) {
int result = isOveride(treeObj.getName(), TreeObject.getTypeName(treeObj.getType()));
if (result == IDialogConstants.CANCEL_ID) {
ImportService.setImporting(false);
return importedIds;
}
if (result == IDialogConstants.YES_TO_ALL_ID) {
isOverrideAll = true;
}
if (result == IDialogConstants.NO_ID) {
break;
}
}
if (!RepositoryResourceUtil.isLockedItem(item)) {
try {
factory.lock(item);
} catch (PersistenceException e1) {
log.error(e1.getMessage(), e1);
} catch (LoginException e1) {
log.error(e1.getMessage(), e1);
}
item.setMDMServerObject(eobj);
item.getState().setDeleted(false);
// save
RepositoryResourceUtil.saveItem(item, false);
try {
factory.unlock(item);
} catch (PersistenceException e) {
log.error(e.getMessage(), e);
} catch (LoginException e) {
log.error(e.getMessage(), e);
}
importedIds.add(item.getProperty().getId());
}
CommandManager.getInstance().removeCommandStack(item.getProperty().getId());
} else {
IRepositoryNodeConfiguration config = RepositoryNodeConfigurationManager.getConfiguration(type);
item = (MDMServerObjectItem) config.getResourceProvider().createNewItem(type);
item.setMDMServerObject(eobj);
ItemState itemState = PropertiesFactory.eINSTANCE.createItemState();
itemState.setPath(caculatePath(treeObj));
handlePath(itemState, type);
item.setState(itemState);
String version = getVersion(treeObj);
if (RepositoryResourceUtil.createItem(item, uniqueName, version, false, false)) {
importedIds.add(item.getProperty().getId());
}
}
} catch (IOException e) {
log.error(e.getMessage(), e);
}
monitor.worked(1);
}
ImportService.setImporting(false);
monitor.done();
return importedIds;
}
Aggregations