Author: scabanovich
Date: 2009-12-30 09:31:46 -0500 (Wed, 30 Dec 2009)
New Revision: 19617
Added:
trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb-notifiers.meta
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/NotificationListConverter.java
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/plugin.xml
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-menu.properties
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-menu_ja.properties
trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb-actions.meta
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBConstants.java
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/SpecificActionLoader.java
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/ConverterConstants.java
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/ListConverter.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-5554
Modified: trunk/esb/plugins/org.jboss.tools.esb.core/plugin.xml
===================================================================
--- trunk/esb/plugins/org.jboss.tools.esb.core/plugin.xml 2009-12-30 12:58:50 UTC (rev
19616)
+++ trunk/esb/plugins/org.jboss.tools.esb.core/plugin.xml 2009-12-30 14:31:46 UTC (rev
19617)
@@ -5,6 +5,7 @@
<extension point="org.jboss.tools.common.model.meta">
<meta path="meta/esb.meta"/>
<meta path="meta/esb-actions.meta"/>
+ <meta path="meta/esb-notifiers.meta"/>
<meta path="meta/esb12.meta"/>
</extension>
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-menu.properties
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-menu.properties 2009-12-30
12:58:50 UTC (rev 19616)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-menu.properties 2009-12-30
14:31:46 UTC (rev 19617)
@@ -2,7 +2,7 @@
ESB.AddNotificationList.menu=Add Notification List...
ESB.AddProperty.menu=Add Property...
ESB.AddAlias.menu=Add Alias...
-ESB.CreateTarget.menu=Add Target...
+ESB.CreateTarget.menu=Target...
ESB.CreateTag.menu=Add Tag...
ESB.AddAction.menu=Generic Action...
ESB.AddBus.menu=Add Channel...
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-menu_ja.properties
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-menu_ja.properties 2009-12-30
12:58:50 UTC (rev 19616)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/resources/help/keys-esb-menu_ja.properties 2009-12-30
14:31:46 UTC (rev 19617)
@@ -2,7 +2,7 @@
ESB.AddNotificationList.menu=Add Notification List...
ESB.AddProperty.menu=\u30D7\u30ED\u30D1\u30C6\u30A3\u30FC\u306E\u8FFD\u52A0...
ESB.AddAlias.menu=\u5225\u540D\u306E\u8FFD\u52A0...
-ESB.CreateTarget.menu=Add Target...
+ESB.CreateTarget.menu=Target...
ESB.CreateTag.menu=\u30BF\u30B0\u306E\u8FFD\u52A0...
ESB.AddAction.menu=Generic Action...
ESB.AddBus.menu=Add Channel...
Modified: trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb-actions.meta
===================================================================
--- trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb-actions.meta 2009-12-30
12:58:50 UTC (rev 19616)
+++ trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb-actions.meta 2009-12-30
14:31:46 UTC (rev 19617)
@@ -1148,6 +1148,56 @@
<XDependencies/>
</XModelEntity>
<XModelEntity ImplementingClass="%ESB%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData;children=%EntityOrdered%"
+ XMLSUBPATH="action" name="ESBPreActionNotifier120">
+ <XChildrenEntities>
+ <XChildEntity name="ESBProperty"/>
+ <XChildEntity name="ESBPreNotificationList120"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.action" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="notifier action" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general;id=true;save=always"
+ name="name" xmlname="name"/>
+ <XModelAttribute PROPERTIES="category=general;save=always"
+ default="org.jboss.soa.esb.actions.Notifier" name="class"
xmlname="class">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="pre=true;category=general"
+ name="ok method" xmlname="okMethod"/>
+ <XModelAttribute PROPERTIES="pre=true;category=general"
+ name="exception method" xmlname="exceptionMethod"/>
+ <XModelAttribute PROPERTIES="category=general" name="process"
xmlname="process">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ PROPERTIES="validator.add=true" WizardClassName="%Default%"
+ displayName="Add Notification List..." kind="action"
name="AddNotificationList">
+ <EntityData EntityName="ESBPreNotificationList120">
+ <AttributeData AttributeName="type"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItemReference entity="ESBProperty"
name="CopyActions"/>
+ <XActionItemReference entity="ESBProperty"
name="DeleteActions"/>
+ <XActionItemReference entity="ESBProperty"
name="Properties"/>
+ <XActionItemReference entity="ESBProperty"
name="MoveActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%ESB%"
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData"
XMLSUBPATH="action" name="ESBPreActionObjectInvoke101">
<XChildrenEntities>
@@ -2679,7 +2729,7 @@
</XModelAttribute>
</XModelAttributes>
<XActionItem kind="list">
- <XActionItem kind="list" name="CreateActions">
+ <XActionItem displayName="New" group="1" kind="list"
name="CreateActions">
<XActionItem HandlerClassName="%Create%" ICON="action.empty"
PROPERTIES="entity=ESBPreTarget" WizardClassName="%Default%"
displayName="Add Target..." kind="action"
name="CreateTarget">
@@ -2710,6 +2760,65 @@
</XActionItem>
<XDependencies/>
</XModelEntity>
+ <XModelEntity ImplementingClass="%ESB%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData;converter=notification2;children=%Ordered%"
+ XMLSUBPATH="NotificationList" name="ESBPreNotificationList120">
+ <XChildrenEntities>
+ <XChildEntity name="ESBPreTarget"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="notification list"
loader="ElementType" name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general;id=true;save=always"
+ name="type" xmlname="type"/>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem displayName="New" group="1" kind="list"
name="CreateActions">
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ PROPERTIES="entity=ESBPreTarget;validator.add=true"
+ WizardClassName="%Default%" displayName="Generic Target..."
+ kind="action" name="CreateTarget">
+ <EntityData EntityName="ESBPreTarget">
+ <AttributeData AttributeName="class"/>
+ </EntityData>
+ </XActionItem>
+ <XActionItem kind="list" name="Target"/>
+ <XActionItem HIDE="always"
+
HandlerClassName="org.jboss.tools.common.meta.action.impl.handlers.ShowMenuHandler"
+ PROPERTIES="actionList=CreateActions" displayName="Target..."
+ kind="action" name="AddAnyTarget"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" displayName="Create"
kind="list" name="EditActions"/>
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.cut" displayName="Cut" kind="action"
name="Cut"/>
+ </XActionItem>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" kind="list"
name="Properties">
+ <XActionItem HandlerClassName="%Properties%"
ICON="action.empty"
+ displayName="Properties..." kind="action"
name="Properties"/>
+ </XActionItem>
+ <XActionItem displayName="move" kind="list"
name="MoveActions">
+ <XActionItem HIDE="always" HandlerClassName="%Move%"
+ ICON="action.move" displayName="Move" kind="action"
name="Move"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
<XModelEntity
ImplementingClass="org.jboss.tools.esb.core.model.ESBRouteToImpl"
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData;converter=path"
@@ -3147,7 +3256,7 @@
<XChildEntity name="ESBPreActionSOAPWiseClient120"/>
<XChildEntity name="ESBPreActionSOAPProxy120"/>
<XChildEntity name="ESBPreActionSystemPrintln101"/>
- <XChildEntity name="ESBPreActionNotifier101"/>
+ <XChildEntity name="ESBPreActionNotifier120"/>
<XChildEntity name="ESBPreActionBusinessRulesProcessor101"/>
<XChildEntity name="ESBPreActionXSLTAction120"/>
<XChildEntity name="ESBPreActionSchemaValidator120"/>
@@ -3284,7 +3393,7 @@
<XActionItem HandlerClassName="%Create%"
ICON="action.empty"
PROPERTIES="validator.add=true" WizardClassName="%Default%"
displayName="Notifier..." kind="action"
name="AddNotifier">
- <EntityData EntityName="ESBPreActionNotifier101">
+ <EntityData EntityName="ESBPreActionNotifier120">
<AttributeData AttributeName="name"/>
</EntityData>
</XActionItem>
Added: trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb-notifiers.meta
===================================================================
--- trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb-notifiers.meta
(rev 0)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/resources/meta/esb-notifiers.meta 2009-12-30
14:31:46 UTC (rev 19617)
@@ -0,0 +1,343 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE XModelEntityGroup PUBLIC "-//Red Hat, Inc.//DTD Meta 1.0//EN"
+ "meta.dtd">
+<XModelEntityGroup>
+ <VERSION DEPENDS="Model:1.0" MODULE="ESB"
VERSION="1.0"/>
+ <MAPPINGS/>
+ <ICONS>
+ <GROUP name="action">
+ <GROUP name="new">
+ <GROUP name="esb"/>
+ </GROUP>
+ </GROUP>
+ <GROUP name="main">
+ <GROUP name="esb"/>
+ </GROUP>
+ </ICONS>
+ <GlobalActions kind="list"/>
+ <XModelEntity ImplementingClass="%ESB%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData"
+ XMLSUBPATH="column" name="ESBPreNotifyColumn">
+ <XChildrenEntities/>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="column" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general;id=true;save=always"
+ name="name" xmlname="name"/>
+ <XModelAttribute PROPERTIES="category=general" name="value"
+ visibility="false" xmlname="value"/>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions"/>
+ <XActionItem ICON="action.empty" displayName="Create"
kind="list" name="EditActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="CopyActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="DeleteActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="Properties"/>
+ <XActionItemReference entity="ESBPreAlias"
name="MoveActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%ESB%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData"
+ XMLSUBPATH="ftp" name="ESBPreNotifyFTP">
+ <XChildrenEntities/>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="ftp" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general;id=true;save=always"
+ name="url" xmlname="URL"/>
+ <XModelAttribute PROPERTIES="category=general" name="file name"
xmlname="filename">
+ <Constraint loader="Tree">
+ <value name="ESBResourceTree"/>
+ <value name="linkAction=OpenFile"/>
+ </Constraint>
+ <Editor name="TreeChooser"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem
+
HandlerClassName="org.jboss.tools.esb.core.model.handlers.OpenESBResourceHandler"
+ ICON="action.empty" PROPERTIES="actionpath=Open;attribute=file
name"
+ displayName="Open File" kind="action"
name="OpenFile"/>
+ <XActionItem kind="list" name="CreateActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="CopyActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="DeleteActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="Properties"/>
+ <XActionItemReference entity="ESBPreAlias"
name="MoveActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%ESB%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData"
+ XMLSUBPATH="file" name="ESBPreNotifyFile">
+ <XChildrenEntities/>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="file" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general;id=true;save=always"
+ name="uri" xmlname="URI"/>
+ <XModelAttribute PROPERTIES="category=general" name="append"
+ visibility="false" xmlname="append">
+ <Constraint loader="ListString">
+ <value/>
+ <value name="true"/>
+ <value name="false"/>
+ </Constraint>
+ <Editor name="ListString"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions"/>
+ <XActionItem ICON="action.empty" displayName="Create"
kind="list" name="EditActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="CopyActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="DeleteActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="Properties"/>
+ <XActionItemReference entity="ESBPreAlias"
name="MoveActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%ESB%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData"
+ XMLSUBPATH="target" name="ESBPreTargetNotifyConsole">
+ <XChildrenEntities/>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="target notify console"
loader="ElementType" name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general;id=true;save=always"
+ default="NotifyConsole" name="class"
xmlname="class">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions"/>
+ <XActionItem ICON="action.empty" displayName="Create"
kind="list" name="EditActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="CopyActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="DeleteActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="Properties"/>
+ <XActionItemReference entity="ESBPreAlias"
name="MoveActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%ESB%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData"
+ XMLSUBPATH="target" name="ESBPreTargetNotifyFTP">
+ <XChildrenEntities>
+ <XChildEntity name="ESBPreNotifyFTP"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="target notify FTP"
loader="ElementType" name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general;id=true;save=always"
+ default="NotifyFTP" name="class" xmlname="class">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ WizardClassName="%Default%" displayName="Add FTP..."
kind="action" name="CreateFTP">
+ <EntityData EntityName="ESBPreNotifyFTP">
+ <AttributeData AttributeName="url"/>
+ <AttributeData AttributeName="file name"
Mandatory="no"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItem ICON="action.empty" displayName="Create"
kind="list" name="EditActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="CopyActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="DeleteActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="Properties"/>
+ <XActionItemReference entity="ESBPreAlias"
name="MoveActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%ESB%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData"
+ XMLSUBPATH="target" name="ESBPreTargetNotifyFiles">
+ <XChildrenEntities>
+ <XChildEntity name="ESBPreNotifyFile"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="target notify files"
loader="ElementType" name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general;id=true;save=always"
+ default="NotifyFiles" name="class" xmlname="class">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ WizardClassName="%Default%" displayName="Add File..."
kind="action" name="CreateFile">
+ <EntityData EntityName="ESBPreNotifyFile">
+ <AttributeData AttributeName="uri"/>
+ <AttributeData AttributeName="append" Mandatory="no"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItem ICON="action.empty" displayName="Create"
kind="list" name="EditActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="CopyActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="DeleteActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="Properties"/>
+ <XActionItemReference entity="ESBPreAlias"
name="MoveActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%ESB%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.esb.ui.editor.form.ESBXMLFormLayoutData"
+ XMLSUBPATH="target" name="ESBPreTargetNotifySQLTable">
+ <XChildrenEntities>
+ <XChildEntity name="ESBPreNotifyColumn"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.esb.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="target notify SQL table"
+ loader="ElementType" name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general;id=true;save=always"
+ default="NotifySQLTable" name="class"
xmlname="class">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general" name="driver
class" xmlname="driver-class">
+ <Editor name="AccessibleJava"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general" name="connection
url" xmlname="connection-url"/>
+ <XModelAttribute PROPERTIES="category=general" name="user name"
xmlname="user-name"/>
+ <XModelAttribute PROPERTIES="category=general" name="password"
xmlname="password"/>
+ <XModelAttribute PROPERTIES="category=general" name="table"
xmlname="table"/>
+ <XModelAttribute PROPERTIES="category=general" name="data
column" xmlname="dataColumn"/>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ PROPERTIES="validator.add=true" WizardClassName="%Default%"
+ displayName="Add Column..." kind="action"
name="CreateColumn">
+ <EntityData EntityName="ESBPreNotifyColumn">
+ <AttributeData AttributeName="name"/>
+ <AttributeData AttributeName="value" Mandatory="no"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItem ICON="action.empty" displayName="Create"
kind="list" name="EditActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="CopyActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="DeleteActions"/>
+ <XActionItemReference entity="ESBPreAlias"
name="Properties"/>
+ <XActionItemReference entity="ESBPreAlias"
name="MoveActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XEntityExtension name="ESBPreNotificationList120">
+ <XChildrenEntities>
+ <XChildEntity maxCount="1"
name="ESBPreTargetNotifyConsole"/>
+ <XChildEntity maxCount="1" name="ESBPreTargetNotifyFiles"/>
+ <XChildEntity maxCount="1"
name="ESBPreTargetNotifySQLTable"/>
+ <XChildEntity maxCount="1" name="ESBPreTargetNotifyFTP"/>
+ </XChildrenEntities>
+ <XActionItem kind="list">
+ <XActionItem displayName="New" group="1" kind="list"
name="CreateActions">
+ <XActionItem kind="list" name="Target">
+ <XActionItem HandlerClassName="%DefaultReplaceUnique%"
+ ICON="action.empty"
+ PROPERTIES="child=NotifyConsole;significanceMessageClass=%Replace%"
+ displayName="Notify Console..." kind="action"
name="CreateTargetNotifyConsole">
+ <EntityData EntityName="ESBPreTargetNotifyConsole">
+ <AttributeData AttributeName="class"/>
+ </EntityData>
+ </XActionItem>
+ <XActionItem HandlerClassName="%DefaultReplaceUnique%"
+ ICON="action.empty"
+ PROPERTIES="child=NotifyFiles;significanceMessageClass=%Replace%"
+ displayName="Notify Files..." kind="action"
name="CreateTargetNotifyFiles">
+ <EntityData EntityName="ESBPreTargetNotifyFiles">
+ <AttributeData AttributeName="class"/>
+ </EntityData>
+ </XActionItem>
+ <XActionItem HandlerClassName="%DefaultReplaceUnique%"
+ ICON="action.empty"
+ PROPERTIES="child=NotifyFTP;significanceMessageClass=%Replace%"
+ displayName="Notify FTP..." kind="action"
name="CreateTargetNotifyFTP">
+ <EntityData EntityName="ESBPreTargetNotifyFTP">
+ <AttributeData AttributeName="class"/>
+ </EntityData>
+ </XActionItem>
+ <XActionItem HandlerClassName="%DefaultReplaceUnique%"
+ ICON="action.empty"
+ PROPERTIES="child=NotifySQLTable;significanceMessageClass=%Replace%"
+ WizardClassName="%Default%" displayName="Notify SQL Table..."
+ kind="action" name="CreateTargetNotifySQLTable">
+ <EntityData EntityName="ESBPreTargetNotifySQLTable">
+ <AttributeData AttributeName="class"/>
+ <AttributeData AttributeName="driver class"
Mandatory="no"/>
+ <AttributeData AttributeName="connection url"
Mandatory="no"/>
+ <AttributeData AttributeName="user name"
Mandatory="no"/>
+ <AttributeData AttributeName="password"
Mandatory="no"/>
+ <AttributeData AttributeName="table" Mandatory="no"/>
+ <AttributeData AttributeName="data column"
Mandatory="no"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ </XActionItem>
+ </XActionItem>
+ </XEntityExtension>
+</XModelEntityGroup>
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBConstants.java
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBConstants.java 2009-12-30
12:58:50 UTC (rev 19616)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/ESBConstants.java 2009-12-30
14:31:46 UTC (rev 19617)
@@ -140,8 +140,15 @@
public String ENT_ESB_CRON_SCHEDULE = "ESBCronSchedule101"; //$NON-NLS-1$
public String ENT_ESB_ROUTE_TO = "ESBPreRouteTo"; //$NON-NLS-1$
- public String ENT_ESB_OBJECT_PATH = "ESBPreObjectPath"; //$NON-NLS-1$
+ public String ENT_ESB_OBJECT_PATH = "ESBPreObjectPath"; //$NON-NLS-1$
+ public String ENT_ESB_NOTIFICATION = "ESBPreNotificationList"; //$NON-NLS-1$
+ public String ENT_ESB_NOTIFICATION_120 = ENT_ESB_NOTIFICATION + SUFF_120;
+ public String ENT_ESB_TARGET = "ESBPreTarget"; //$NON-NLS-1$
+ public String TARGET_NOTIFY_CONSOLE = "NotifyConsole"; //$NON-NLS-1$
+ public String TARGET_NOTIFY_FILES = "NotifyFiles"; //$NON-NLS-1$
+ public String TARGET_NOTIFY_SQL_TABLE = "NotifySQLTable"; //$NON-NLS-1$
+
public String ATTR_NAME = "name"; //$NON-NLS-1$
public String ATTR_VALUE = "value"; //$NON-NLS-1$
public String ATTR_PROPERTY_VALUE_PRESENTATION = "value presentation";
//$NON-NLS-1$
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/SpecificActionLoader.java
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/SpecificActionLoader.java 2009-12-30
12:58:50 UTC (rev 19616)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/SpecificActionLoader.java 2009-12-30
14:31:46 UTC (rev 19617)
@@ -54,6 +54,7 @@
propertyConverters.put("route", ConverterConstants.ROUTE_CONVERTER);
propertyConverters.put("path", ConverterConstants.OBJECT_PATHS_CONVERTER);
propertyConverters.put("notification",
ConverterConstants.NOTIFICATION_CONVERTER);
+ propertyConverters.put("notification2",
ConverterConstants.NOTIFICATION_CONVERTER_2);
propertyConverters.put("bpmVar", ConverterConstants.BPM_VAR_CONVERTER);
propertyConverters.put("httpclient", ConverterConstants.ENDPOINT_CONVERTER);
propertyConverters.put("header", ConverterConstants.HEADER_CONVERTER);
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/ConverterConstants.java
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/ConverterConstants.java 2009-12-30
12:58:50 UTC (rev 19616)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/ConverterConstants.java 2009-12-30
14:31:46 UTC (rev 19617)
@@ -10,6 +10,8 @@
******************************************************************************/
package org.jboss.tools.esb.core.model.converters;
+import org.jboss.tools.esb.core.model.ESBConstants;
+
/**
* @author Viacheslav Kabanovich
*/
@@ -26,8 +28,8 @@
String OBJECT_PATHS = "object-paths";
IPropertyConverter OBJECT_PATHS_CONVERTER = new BasicListConverter(OBJECT_PATHS,
OBJECT_PATH_ENTITY);
- String NOTIFICATION_ENTITY = "ESBPreNotificationList";
- IPropertyConverter NOTIFICATION_CONVERTER = new BasicListConverter(DESTINATIONS,
NOTIFICATION_ENTITY);
+ IPropertyConverter NOTIFICATION_CONVERTER = new BasicListConverter(DESTINATIONS,
ESBConstants.ENT_ESB_NOTIFICATION);
+ IPropertyConverter NOTIFICATION_CONVERTER_2 = new
NotificationListConverter(DESTINATIONS, ESBConstants.ENT_ESB_NOTIFICATION_120);
String BPM_VAR_ENTITY = "ESBPreBPMVar";
String BPM_VARS = "esbToBpmVars";
Modified:
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/ListConverter.java
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/ListConverter.java 2009-12-30
12:58:50 UTC (rev 19616)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/ListConverter.java 2009-12-30
14:31:46 UTC (rev 19617)
@@ -91,8 +91,8 @@
a.addChild(cs[j].copy());
}
} else {
- String toChildEntity = a.getModelEntity().getChildren()[0].getName();
for (int j = 0; j < cs.length; j++) {
+ String toChildEntity = getToChildEntity(cs[j], a.getModelEntity());
XModelObject c = fromAnyElement(cs[j], toChildEntity);
if(c != null) {
a.addChild(c);
@@ -103,6 +103,10 @@
return a;
}
+ protected String getToChildEntity(XModelObject any, XModelEntity parent) {
+ return parent.getChildren()[0].getName();
+ }
+
protected boolean isRelevantTag(String tag, XModelObject object) {
return (object != null && tag != null &&
tag.equals(object.getModelEntity().getXMLSubPath()));
}
Added:
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/NotificationListConverter.java
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/NotificationListConverter.java
(rev 0)
+++
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/NotificationListConverter.java 2009-12-30
14:31:46 UTC (rev 19617)
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2007 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at
http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.esb.core.model.converters;
+
+import java.util.Map;
+
+import org.jboss.tools.common.meta.XModelEntity;
+import org.jboss.tools.common.model.XModelObject;
+import org.jboss.tools.common.model.impl.AnyElementObjectImpl;
+import org.jboss.tools.esb.core.model.ESBConstants;
+
+/**
+ * Class for converting 'destinations' property of out-of-the-box action
org.jboss.soa.esb.actions.Notifier
+ * that may have list of child tags <target> with specific structure. Target entity
depends on attribute 'class'.
+ *
+ * @author Viacheslav Kabanovich
+ */
+public class NotificationListConverter extends BasicListConverter implements ESBConstants
{
+
+ public NotificationListConverter(String propertyName, String itemEntityName) {
+ super(propertyName, itemEntityName);
+ }
+
+ protected String getToChildEntity(XModelObject any, XModelEntity parent) {
+ if(ENT_ESB_NOTIFICATION_120.equals(parent.getName())) {
+ String tag = any.getAttributeValue("tag");
+ if("target".equalsIgnoreCase(tag)) {
+ Map<String, String> attr = toMap(((AnyElementObjectImpl)any).getAttributes());
+ String targetClass = attr.get("class");
+ if(targetClass != null && targetClass.length() > 0) {
+ String result = ENT_ESB_TARGET + targetClass;
+ if(parent.getChild(result) != null) {
+ return result;
+ }
+ }
+ }
+ return ENT_ESB_TARGET;
+ }
+ return super.getToChildEntity(any, parent);
+ }
+}
Property changes on:
trunk/esb/plugins/org.jboss.tools.esb.core/src/org/jboss/tools/esb/core/model/converters/NotificationListConverter.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain