Author: scabanovich
Date: 2010-09-03 08:57:06 -0400 (Fri, 03 Sep 2010)
New Revision: 24693
Added:
trunk/cdi/plugins/org.jboss.tools.cdi.xml/src/org/jboss/tools/cdi/xml/beans/model/CDINamespaces.java
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.xml/resources/help/keys-cdi.properties
trunk/cdi/plugins/org.jboss.tools.cdi.xml/resources/meta/cdi-beans.meta
trunk/cdi/plugins/org.jboss.tools.cdi.xml/schemas/beans.xsd
trunk/cdi/plugins/org.jboss.tools.cdi.xml/src/org/jboss/tools/cdi/xml/beans/model/CDIBeansFileLoader.java
Log:
https://jira.jboss.org/browse/JBIDE-6983
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.xml/resources/help/keys-cdi.properties
===================================================================
---
trunk/cdi/plugins/org.jboss.tools.cdi.xml/resources/help/keys-cdi.properties 2010-09-03
12:23:10 UTC (rev 24692)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.xml/resources/help/keys-cdi.properties 2010-09-03
12:57:06 UTC (rev 24693)
@@ -1,2 +1 @@
-FileDSConnectionFactories.editorTitle=Connection Factories 1.5 Editor
-FileDSDatasources.editorTitle=Datasources 1.5 Editor
\ No newline at end of file
+FileCDIBeans.editorTitle=Beans XML 1.0 Editor
\ No newline at end of file
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.xml/resources/meta/cdi-beans.meta
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.xml/resources/meta/cdi-beans.meta 2010-09-03
12:23:10 UTC (rev 24692)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.xml/resources/meta/cdi-beans.meta 2010-09-03
12:57:06 UTC (rev 24693)
@@ -1,443 +1,443 @@
-<?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="CDI"
VERSION="1.0"/>
- <MAPPINGS>
- <MAPPING name="FileVersions">
- <PAIR name="CDIBeans1.0" value="FileCDIBeans"/>
- </MAPPING>
- <MAPPING name="Recognizers">
- <PAIR name="xml$43"
value="org.jboss.tools.cdi.xml.beans.model.CDIBeansEntityRecognizer"/>
- </MAPPING>
- </MAPPINGS>
- <ICONS>
- <GROUP name="action">
- <GROUP name="new">
- <GROUP name="cdi">
- <ICON name="case" path="images/jsf/transition.gif"/>
- <ICON name="file" path="images/jsf/new-jsf-config.gif"/>
- </GROUP>
- </GROUP>
- </GROUP>
- <GROUP name="main">
- <GROUP name="cdi">
- <ICON name="bean" path="images/struts/form_bean.gif"/>
- <ICON name="file" path="images/jsf/jsf-config.gif"/>
- </GROUP>
- </GROUP>
- </ICONS>
- <GlobalActions kind="list"/>
- <XModelEntity ImplementingClass="%Custom%"
-
PROPERTIES="saveDefault=false;formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData;children=%Ordered%"
- XMLSUBPATH="alternatives" name="CDIAlternatives">
- <XChildrenEntities>
- <XChildEntity name="CDIClass"/>
- <XChildEntity name="CDIStereotype"/>
- </XChildrenEntities>
- <XEntityRenderer>
- <ICONS>
- <ICON info="main.cdi.bean" type="main"/>
- </ICONS>
- </XEntityRenderer>
- <XModelAttributes>
- <XModelAttribute default="decorators" loader="ElementType"
name="element type">
- <Editor name="Uneditable"/>
- </XModelAttribute>
- <XModelAttribute PROPERTIES="id=true;category=general"
- default="Alternatives" name="name"
visibility="false"/>
- <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="entity=CDIClass" WizardClassName="%Default%"
- displayName="Add Class..." kind="action"
name="CreateClass">
- <EntityData EntityName="CDIClass">
- <AttributeData AttributeName="class"/>
- </EntityData>
- </XActionItem>
- <XActionItem HandlerClassName="%Create%" ICON="action.empty"
- PROPERTIES="entity=CDIStereotype" WizardClassName="%Default%"
- displayName="Add Stereotype..." kind="action"
name="CreateStereotype">
- <EntityData EntityName="CDIStereotype">
- <AttributeData AttributeName="stereotype"/>
- </EntityData>
- </XActionItem>
- </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 BaseActionName="Paste"
HandlerClassName="%Paste%"
- ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
- </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="%Custom%"
-
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData"
- XMLSUBPATH="class" name="CDIClass">
- <XChildrenEntities/>
- <XEntityRenderer>
- <ICONS>
- <ICON info="main.cdi.bean" type="main"/>
- </ICONS>
- </XEntityRenderer>
- <XModelAttributes>
- <XModelAttribute default="class" loader="ElementType"
name="element type">
- <Editor name="Uneditable"/>
- </XModelAttribute>
- <XModelAttribute PROPERTIES="id=true;save=always;category=general"
- name="class" xmlname="#text">
- <Editor name="AccessibleJava"/>
- </XModelAttribute>
- <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
- <Editor name="Note"/>
- </XModelAttribute>
- </XModelAttributes>
- <XActionItem kind="list">
- <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="%Custom%"
-
PROPERTIES="saveDefault=false;formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData;children=%Ordered%"
- XMLSUBPATH="decorators" name="CDIDecorators">
- <XChildrenEntities>
- <XChildEntity name="CDIClass"/>
- </XChildrenEntities>
- <XEntityRenderer>
- <ICONS>
- <ICON info="main.cdi.bean" type="main"/>
- </ICONS>
- </XEntityRenderer>
- <XModelAttributes>
- <XModelAttribute default="decorators" loader="ElementType"
name="element type">
- <Editor name="Uneditable"/>
- </XModelAttribute>
- <XModelAttribute PROPERTIES="id=true;category=general"
- default="Decorators" name="name"
visibility="false"/>
- <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="entity=CDIClass" WizardClassName="%Default%"
- displayName="Add Class..." kind="action"
name="CreateClass">
- <EntityData EntityName="CDIClass">
- <AttributeData AttributeName="class"/>
- </EntityData>
- </XActionItem>
- </XActionItem>
- <XActionItemReference entity="CDIAlternatives"
name="CopyActions"/>
- <XActionItemReference entity="CDIAlternatives"
name="DeleteActions"/>
- <XActionItemReference entity="CDIAlternatives"
name="Properties"/>
- <XActionItemReference entity="CDIAlternatives"
name="MoveActions"/>
- </XActionItem>
- <XDependencies/>
- </XModelEntity>
- <XModelEntity ImplementingClass="%Custom%"
-
PROPERTIES="saveDefault=false;formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData;children=%Ordered%"
- XMLSUBPATH="interceptors" name="CDIInterceptors">
- <XChildrenEntities>
- <XChildEntity name="CDIClass"/>
- </XChildrenEntities>
- <XEntityRenderer>
- <ICONS>
- <ICON info="main.cdi.bean" type="main"/>
- </ICONS>
- </XEntityRenderer>
- <XModelAttributes>
- <XModelAttribute default="interceptors" loader="ElementType"
name="element type">
- <Editor name="Uneditable"/>
- </XModelAttribute>
- <XModelAttribute PROPERTIES="id=true;category=general"
- default="Interceptors" name="name"
visibility="false"/>
- <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="entity=CDIClass" WizardClassName="%Default%"
- displayName="Add Class..." kind="action"
name="CreateClass">
- <EntityData EntityName="CDIClass">
- <AttributeData AttributeName="class"/>
- </EntityData>
- </XActionItem>
- </XActionItem>
- <XActionItemReference entity="CDIAlternatives"
name="CopyActions"/>
- <XActionItemReference entity="CDIAlternatives"
name="DeleteActions"/>
- <XActionItemReference entity="CDIAlternatives"
name="Properties"/>
- <XActionItemReference entity="CDIAlternatives"
name="MoveActions"/>
- </XActionItem>
- <XDependencies/>
- </XModelEntity>
- <XModelEntity ImplementingClass="%Custom%"
-
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData"
- XMLSUBPATH="stereotype" name="CDIStereotype">
- <XChildrenEntities/>
- <XEntityRenderer>
- <ICONS>
- <ICON info="main.cdi.bean" type="main"/>
- </ICONS>
- </XEntityRenderer>
- <XModelAttributes>
- <XModelAttribute default="stereotype" loader="ElementType"
name="element type">
- <Editor name="Uneditable"/>
- </XModelAttribute>
- <XModelAttribute PROPERTIES="id=true;save=always;category=general"
- name="stereotype" xmlname="#text">
- <Editor name="AccessibleJava"/>
- </XModelAttribute>
- <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
- <Editor name="Note"/>
- </XModelAttribute>
- </XModelAttributes>
- <XActionItem kind="list">
- <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
-
ImplementationLoadingClass="org.jboss.tools.cdi.xml.beans.model.CDIBeansFileLoader"
- ImplementingClass="org.jboss.tools.cdi.xml.beans.model.FileCDIBeansImpl"
- ObjectEditorClass="%XML%"
-
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData"
- XMLSUBPATH="beans" name="FileCDIBeans">
- <XChildrenEntities>
- <XChildEntity maxCount="1" name="CDIInterceptors"
required="yes"/>
- <XChildEntity maxCount="1" name="CDIDecorators"
required="yes"/>
- <XChildEntity maxCount="1" name="CDIAlternatives"
required="yes"/>
- </XChildrenEntities>
- <XEntityRenderer>
- <ICONS>
- <ICON info="main.cdi.file" type="main"/>
- </ICONS>
- </XEntityRenderer>
- <XModelAttributes>
- <XModelAttribute default="cdi beans" loader="ElementType"
name="element type">
- <Editor name="Uneditable"/>
- </XModelAttribute>
- <XModelAttribute PROPERTIES="category=general" name="name"
xmlname="NAME"/>
- <XModelAttribute default="xml" name="extension"
xmlname="EXTENSION">
- <Editor name="Uneditable"/>
- </XModelAttribute>
- <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
- <Editor name="Note"/>
- </XModelAttribute>
- <XModelAttribute loader="ElementType" name="_lateload"
visibility="false">
- <Editor name="Uneditable"/>
- </XModelAttribute>
- <XModelAttribute default="no" name="isIncorrect"
visibility="false">
- <Constraint loader="List">
- <value name="yes"/>
- <value name="no"/>
- </Constraint>
- <Editor name="Uneditable"/>
- </XModelAttribute>
- <XModelAttribute name="incorrectBody" visibility="false"/>
- <XModelAttribute PROPERTIES="save=always"
-
default="http://java.sun.com/xml/ns/javaee" name="xmlns"
xmlname="xmlns"/>
- <XModelAttribute PROPERTIES="save=always"
-
default="http://www.w3.org/2001/XMLSchema-instance"
name="xmlns:xsi" xmlname="xmlns:xsi"/>
- <XModelAttribute PROPERTIES="save=always"
-
default="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/beans.xsd"
- name="xsi:schemaLocation" xmlname="xsi:schemaLocation"/>
- <XModelAttribute name="encoding">
- <Constraint loader="ListString">
- <value name="ISO-8859-1"/>
- <value name="UTF-8"/>
- </Constraint>
- <Editor name="ListString"/>
- </XModelAttribute>
- </XModelAttributes>
- <XActionItem kind="list">
- <XActionItem BaseActionName="Open" HandlerClassName="%Open%"
- ICON="action.empty" displayName="Open" kind="action"
name="Open"/>
- <XActionItem displayName="Open With" group="1"
kind="list" name="OpenWith">
- <XActionItem HIDE="always"
-
HandlerClassName="org.jboss.tools.common.meta.action.impl.handlers.OpenWithExternalHandler"
- ICON="action.empty" PROPERTIES="extension=struts-config"
- displayName="Open with External Program" kind="action"
name="OpenWithSelected"/>
- <XActionItem HIDE="always"
-
HandlerClassName="org.jboss.tools.common.meta.action.impl.handlers.OpenWithChoiceHandler"
- ICON="action.empty" PROPERTIES="extension=struts-config"
- displayName="Choose Program..." kind="action"
name="OpenWithChoice">
- <EntityData EntityName="OpenWithHelper">
- <AttributeData AttributeName="name"/>
- <AttributeData AttributeName="default"/>
- </EntityData>
- </XActionItem>
- </XActionItem>
- <XActionItem kind="list" name="EditActions">
- <XActionItem
-
HandlerClassName="org.jboss.tools.common.model.filesystems.impl.handlers.RenameEclipseFileHandler"
- ICON="action.empty" displayName="Rename..."
kind="action" name="RenameEclipse"/>
- </XActionItem>
- <XActionItem kind="list" name="SaveActions">
- <XActionItem HIDE="always" HandlerClassName="%SaveFile%"
- ICON="action.save" displayName="Save" kind="action"
name="Save"/>
- </XActionItem>
- <XActionItem ICON="action.empty" displayName="New"
group="1"
- kind="list" name="CreateActions"/>
- <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 BaseActionName="Paste"
HandlerClassName="%Paste%"
- ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
- </XActionItem>
- <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
- <XActionItem BaseActionName="Delete"
- HandlerClassName="%DeleteFile%"
- 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 kind="list" name="DiscardActions">
- <XActionItem HIDE="always"
-
HandlerClassName="org.jboss.tools.common.model.filesystems.impl.DiscardFileHandler"
- ICON="action.delete"
-
PROPERTIES="significanceMessageClass=org.jboss.tools.common.model.filesystems.impl.DiscardFileSignificanceMessage"
- displayName="Discard Changes" kind="action"
name="Discard"/>
- </XActionItem>
- </XActionItem>
- <XDependencies/>
- </XModelEntity>
- <XModelEntity name="FileCDIBeans_EditorActionList">
- <XChildrenEntities/>
- <XEntityRenderer/>
- <XModelAttributes/>
- <XActionItem kind="list">
- <XActionItemReference entity="FileCDIBeans"
- name="CreateActions" path="CreateActions"/>
- <XActionItemReference entity="FileCDIBeans" name="Properties"
path="Properties"/>
- <XActionItem kind="list" name="VerifyActions">
- <XActionItem kind="list" name="StaticActions"/>
- </XActionItem>
- </XActionItem>
- <XDependencies/>
- </XModelEntity>
- <XEntityExtension name="FileFolder">
- <XChildrenEntities>
- <XChildEntity name="FileCDIBeans"/>
- </XChildrenEntities>
- <XActionItem kind="list">
- <XActionItem ICON="action.empty" displayName="New"
group="1"
- kind="list" name="CreateActions">
- <XActionItem ICON="action.newattribute" displayName="File"
group="1"
- kind="list" name="CreateFiles">
- <XActionItem displayName="CDI" kind="list"
name="CDI">
- <XActionItem HandlerClassName="%SpecialWizard%"
- ICON="action.new.cdi.file"
-
PROPERTIES="entity=FileCDIBeans;extensions=.xml.;validator.addfile=true;support=org.jboss.tools.common.model.files.handlers.CreateFileSupport;extension=xml;entityVersion=CDIBeans"
- displayName="CDI Beans File..." kind="action"
name="CreateFileCDIBeans">
- <EntityData EntityName="NewFileWizard">
- <AttributeData AttributeName="folder"/>
- <AttributeData AttributeName="separator"
Mandatory="no"/>
- <AttributeData AttributeName="name"/>
- <AttributeData AttributeName="version"/>
- </EntityData>
- </XActionItem>
- </XActionItem>
- </XActionItem>
- </XActionItem>
- </XActionItem>
- </XEntityExtension>
- <XEntityExtension name="FileSystemFolder">
- <XChildrenEntities>
- <XChildEntity name="FileCDIBeans"/>
- </XChildrenEntities>
- <XActionItem kind="list">
- <XActionItem ICON="action.empty" displayName="New"
group="1"
- kind="list" name="CreateActions">
- <XActionItem ICON="action.newattribute" displayName="File"
group="1"
- kind="list" name="CreateFiles">
- <XActionItem displayName="CDI" kind="list"
name="CDI">
- <XActionItem HandlerClassName="%SpecialWizard%"
- ICON="action.new.cdi.file"
-
PROPERTIES="entity=FileCDIBeans;extensions=.xml.;validator.addfile=true;support=org.jboss.tools.common.model.files.handlers.CreateFileSupport;extension=xml;entityVersion=CDIBeans"
- displayName="CDI Beans File..." kind="action"
name="CreateFileCDIBeans">
- <EntityData EntityName="NewFileWizard">
- <AttributeData AttributeName="folder"/>
- <AttributeData AttributeName="separator"
Mandatory="no"/>
- <AttributeData AttributeName="name"/>
- <AttributeData AttributeName="version"/>
- </EntityData>
- </XActionItem>
- </XActionItem>
- </XActionItem>
- </XActionItem>
- </XActionItem>
- </XEntityExtension>
- <XEntityExtension name="FileSystemJar">
- <XChildrenEntities>
- <XChildEntity name="FileCDIBeans"/>
- </XChildrenEntities>
- <XActionItem kind="list"/>
- </XEntityExtension>
- <XEntityExtension name="JarFolder">
- <XChildrenEntities>
- <XChildEntity name="FileCDIBeans"/>
- </XChildrenEntities>
- <XActionItem kind="list"/>
- </XEntityExtension>
-</XModelEntityGroup>
+<?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="CDI"
VERSION="1.0"/>
+ <MAPPINGS>
+ <MAPPING name="FileVersions">
+ <PAIR name="CDIBeans1.0" value="FileCDIBeans"/>
+ </MAPPING>
+ <MAPPING name="Recognizers">
+ <PAIR name="xml$43"
value="org.jboss.tools.cdi.xml.beans.model.CDIBeansEntityRecognizer"/>
+ </MAPPING>
+ </MAPPINGS>
+ <ICONS>
+ <GROUP name="action">
+ <GROUP name="new">
+ <GROUP name="cdi">
+ <ICON name="case" path="images/jsf/transition.gif"/>
+ <ICON name="file" path="images/jsf/new-jsf-config.gif"/>
+ </GROUP>
+ </GROUP>
+ </GROUP>
+ <GROUP name="main">
+ <GROUP name="cdi">
+ <ICON name="bean" path="images/struts/form_bean.gif"/>
+ <ICON name="file" path="images/jsf/jsf-config.gif"/>
+ </GROUP>
+ </GROUP>
+ </ICONS>
+ <GlobalActions kind="list"/>
+ <XModelEntity ImplementingClass="%Custom%"
+
PROPERTIES="saveDefault=false;formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData;children=%Ordered%"
+ XMLSUBPATH="alternatives" name="CDIAlternatives">
+ <XChildrenEntities>
+ <XChildEntity name="CDIClass"/>
+ <XChildEntity name="CDIStereotype"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.cdi.bean" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="decorators" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true;category=general"
+ default="Alternatives" name="name"
visibility="false"/>
+ <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="entity=CDIClass" WizardClassName="%Default%"
+ displayName="Add Class..." kind="action"
name="CreateClass">
+ <EntityData EntityName="CDIClass">
+ <AttributeData AttributeName="class"/>
+ </EntityData>
+ </XActionItem>
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ PROPERTIES="entity=CDIStereotype" WizardClassName="%Default%"
+ displayName="Add Stereotype..." kind="action"
name="CreateStereotype">
+ <EntityData EntityName="CDIStereotype">
+ <AttributeData AttributeName="stereotype"/>
+ </EntityData>
+ </XActionItem>
+ </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 BaseActionName="Paste"
HandlerClassName="%Paste%"
+ ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
+ </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="%Custom%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData"
+ XMLSUBPATH="class" name="CDIClass">
+ <XChildrenEntities/>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.cdi.bean" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="class" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true;save=always;category=general"
+ name="class" xmlname="#text">
+ <Editor name="AccessibleJava"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <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="%Custom%"
+
PROPERTIES="saveDefault=false;formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData;children=%Ordered%"
+ XMLSUBPATH="decorators" name="CDIDecorators">
+ <XChildrenEntities>
+ <XChildEntity name="CDIClass"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.cdi.bean" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="decorators" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true;category=general"
+ default="Decorators" name="name"
visibility="false"/>
+ <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="entity=CDIClass" WizardClassName="%Default%"
+ displayName="Add Class..." kind="action"
name="CreateClass">
+ <EntityData EntityName="CDIClass">
+ <AttributeData AttributeName="class"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItemReference entity="CDIAlternatives"
name="CopyActions"/>
+ <XActionItemReference entity="CDIAlternatives"
name="DeleteActions"/>
+ <XActionItemReference entity="CDIAlternatives"
name="Properties"/>
+ <XActionItemReference entity="CDIAlternatives"
name="MoveActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
+
PROPERTIES="saveDefault=false;formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData;children=%Ordered%"
+ XMLSUBPATH="interceptors" name="CDIInterceptors">
+ <XChildrenEntities>
+ <XChildEntity name="CDIClass"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.cdi.bean" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="interceptors" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true;category=general"
+ default="Interceptors" name="name"
visibility="false"/>
+ <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="entity=CDIClass" WizardClassName="%Default%"
+ displayName="Add Class..." kind="action"
name="CreateClass">
+ <EntityData EntityName="CDIClass">
+ <AttributeData AttributeName="class"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItemReference entity="CDIAlternatives"
name="CopyActions"/>
+ <XActionItemReference entity="CDIAlternatives"
name="DeleteActions"/>
+ <XActionItemReference entity="CDIAlternatives"
name="Properties"/>
+ <XActionItemReference entity="CDIAlternatives"
name="MoveActions"/>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData"
+ XMLSUBPATH="stereotype" name="CDIStereotype">
+ <XChildrenEntities/>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.cdi.bean" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="stereotype" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true;save=always;category=general"
+ name="stereotype" xmlname="#text">
+ <Editor name="AccessibleJava"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <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
+
ImplementationLoadingClass="org.jboss.tools.cdi.xml.beans.model.CDIBeansFileLoader"
+ ImplementingClass="org.jboss.tools.cdi.xml.beans.model.FileCDIBeansImpl"
+ ObjectEditorClass="%XML%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.cdi.xml.ui.editor.form.CDIXMLFormLayoutData"
+ XMLSUBPATH="beans" name="FileCDIBeans">
+ <XChildrenEntities>
+ <XChildEntity maxCount="1" name="CDIInterceptors"
required="yes"/>
+ <XChildEntity maxCount="1" name="CDIDecorators"
required="yes"/>
+ <XChildEntity maxCount="1" name="CDIAlternatives"
required="yes"/>
+ <XChildEntity name="AnyElement"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.cdi.file" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="cdi beans" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general" name="name"
xmlname="NAME"/>
+ <XModelAttribute default="xml" name="extension"
xmlname="EXTENSION">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ <XModelAttribute loader="ElementType" name="_lateload"
visibility="false">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute default="no" name="isIncorrect"
visibility="false">
+ <Constraint loader="List">
+ <value name="yes"/>
+ <value name="no"/>
+ </Constraint>
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute name="incorrectBody" visibility="false"/>
+ <XModelAttribute PROPERTIES="save=always"
+
default="http://java.sun.com/xml/ns/javaee" name="xmlns"
xmlname="xmlns"/>
+ <XModelAttribute PROPERTIES="save=always"
+
default="http://www.w3.org/2001/XMLSchema-instance"
name="xmlns:xsi" xmlname="xmlns:xsi"/>
+ <XModelAttribute PROPERTIES="save=always"
+
default="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/beans.xsd"
+ name="xsi:schemaLocation" xmlname="xsi:schemaLocation"/>
+ <XModelAttribute name="namespaceMapping"/>
+ <XModelAttribute name="encoding">
+ <Constraint loader="ListString">
+ <value name="ISO-8859-1"/>
+ <value name="UTF-8"/>
+ </Constraint>
+ <Editor name="ListString"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem BaseActionName="Open" HandlerClassName="%Open%"
+ ICON="action.empty" displayName="Open" kind="action"
name="Open"/>
+ <XActionItem displayName="Open With" group="1"
kind="list" name="OpenWith">
+ <XActionItem HIDE="always"
+
HandlerClassName="org.jboss.tools.common.meta.action.impl.handlers.OpenWithExternalHandler"
+ ICON="action.empty" PROPERTIES="extension=struts-config"
+ displayName="Open with External Program" kind="action"
name="OpenWithSelected"/>
+ <XActionItem HIDE="always"
+
HandlerClassName="org.jboss.tools.common.meta.action.impl.handlers.OpenWithChoiceHandler"
+ ICON="action.empty" PROPERTIES="extension=struts-config"
+ displayName="Choose Program..." kind="action"
name="OpenWithChoice">
+ <EntityData EntityName="OpenWithHelper">
+ <AttributeData AttributeName="name"/>
+ <AttributeData AttributeName="default"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItem kind="list" name="EditActions">
+ <XActionItem
+
HandlerClassName="org.jboss.tools.common.model.filesystems.impl.handlers.RenameEclipseFileHandler"
+ ICON="action.empty" displayName="Rename..."
kind="action" name="RenameEclipse"/>
+ </XActionItem>
+ <XActionItem kind="list" name="SaveActions">
+ <XActionItem HIDE="always" HandlerClassName="%SaveFile%"
+ ICON="action.save" displayName="Save" kind="action"
name="Save"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" displayName="New"
group="1"
+ kind="list" name="CreateActions"/>
+ <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 BaseActionName="Paste"
HandlerClassName="%Paste%"
+ ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
+ </XActionItem>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%DeleteFile%"
+ 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 kind="list" name="DiscardActions">
+ <XActionItem HIDE="always"
+
HandlerClassName="org.jboss.tools.common.model.filesystems.impl.DiscardFileHandler"
+ ICON="action.delete"
+
PROPERTIES="significanceMessageClass=org.jboss.tools.common.model.filesystems.impl.DiscardFileSignificanceMessage"
+ displayName="Discard Changes" kind="action"
name="Discard"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity name="FileCDIBeans_EditorActionList">
+ <XChildrenEntities/>
+ <XEntityRenderer/>
+ <XModelAttributes/>
+ <XActionItem kind="list">
+ <XActionItemReference entity="FileCDIBeans"
name="CreateActions" path="CreateActions"/>
+ <XActionItemReference entity="FileCDIBeans" name="Properties"
path="Properties"/>
+ <XActionItem kind="list" name="VerifyActions">
+ <XActionItem kind="list" name="StaticActions"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XEntityExtension name="FileFolder">
+ <XChildrenEntities>
+ <XChildEntity name="FileCDIBeans"/>
+ </XChildrenEntities>
+ <XActionItem kind="list">
+ <XActionItem ICON="action.empty" displayName="New"
group="1"
+ kind="list" name="CreateActions">
+ <XActionItem ICON="action.newattribute" displayName="File"
group="1"
+ kind="list" name="CreateFiles">
+ <XActionItem displayName="CDI" kind="list"
name="CDI">
+ <XActionItem HandlerClassName="%SpecialWizard%"
+ ICON="action.new.cdi.file"
+
PROPERTIES="entity=FileCDIBeans;extensions=.xml.;validator.addfile=true;support=org.jboss.tools.common.model.files.handlers.CreateFileSupport;extension=xml;entityVersion=CDIBeans"
+ displayName="CDI Beans File..." kind="action"
name="CreateFileCDIBeans">
+ <EntityData EntityName="NewFileWizard">
+ <AttributeData AttributeName="folder"/>
+ <AttributeData AttributeName="separator"
Mandatory="no"/>
+ <AttributeData AttributeName="name"/>
+ <AttributeData AttributeName="version"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ </XActionItem>
+ </XActionItem>
+ </XActionItem>
+ </XEntityExtension>
+ <XEntityExtension name="FileSystemFolder">
+ <XChildrenEntities>
+ <XChildEntity name="FileCDIBeans"/>
+ </XChildrenEntities>
+ <XActionItem kind="list">
+ <XActionItem ICON="action.empty" displayName="New"
group="1"
+ kind="list" name="CreateActions">
+ <XActionItem ICON="action.newattribute" displayName="File"
group="1"
+ kind="list" name="CreateFiles">
+ <XActionItem displayName="CDI" kind="list"
name="CDI">
+ <XActionItem HandlerClassName="%SpecialWizard%"
+ ICON="action.new.cdi.file"
+
PROPERTIES="entity=FileCDIBeans;extensions=.xml.;validator.addfile=true;support=org.jboss.tools.common.model.files.handlers.CreateFileSupport;extension=xml;entityVersion=CDIBeans"
+ displayName="CDI Beans File..." kind="action"
name="CreateFileCDIBeans">
+ <EntityData EntityName="NewFileWizard">
+ <AttributeData AttributeName="folder"/>
+ <AttributeData AttributeName="separator"
Mandatory="no"/>
+ <AttributeData AttributeName="name"/>
+ <AttributeData AttributeName="version"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ </XActionItem>
+ </XActionItem>
+ </XActionItem>
+ </XEntityExtension>
+ <XEntityExtension name="FileSystemJar">
+ <XChildrenEntities>
+ <XChildEntity name="FileCDIBeans"/>
+ </XChildrenEntities>
+ <XActionItem kind="list"/>
+ </XEntityExtension>
+ <XEntityExtension name="JarFolder">
+ <XChildrenEntities>
+ <XChildEntity name="FileCDIBeans"/>
+ </XChildrenEntities>
+ <XActionItem kind="list"/>
+ </XEntityExtension>
+</XModelEntityGroup>
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.xml/schemas/beans.xsd
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.xml/schemas/beans.xsd 2010-09-03 12:23:10 UTC
(rev 24692)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.xml/schemas/beans.xsd 2010-09-03 12:57:06 UTC
(rev 24693)
@@ -44,11 +44,12 @@
</xs:documentation>
</xs:annotation>
<xs:complexType>
- <xs:all>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="javaee:interceptors" />
<xs:element ref="javaee:decorators" />
<xs:element ref="javaee:alternatives" />
- </xs:all>
+ <xs:any namespace="##other"
processContents="lax"/>
+ </xs:choice>
</xs:complexType>
</xs:element>
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.xml/src/org/jboss/tools/cdi/xml/beans/model/CDIBeansFileLoader.java
===================================================================
---
trunk/cdi/plugins/org.jboss.tools.cdi.xml/src/org/jboss/tools/cdi/xml/beans/model/CDIBeansFileLoader.java 2010-09-03
12:23:10 UTC (rev 24692)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.xml/src/org/jboss/tools/cdi/xml/beans/model/CDIBeansFileLoader.java 2010-09-03
12:57:06 UTC (rev 24693)
@@ -10,8 +10,11 @@
******************************************************************************/
package org.jboss.tools.cdi.xml.beans.model;
+import org.jboss.tools.common.model.XModelObject;
import org.jboss.tools.common.model.loaders.impl.SimpleWebFileLoader;
+import org.jboss.tools.common.model.util.NamespaceMapping;
import org.jboss.tools.common.model.util.XModelObjectLoaderUtil;
+import org.w3c.dom.Element;
public class CDIBeansFileLoader extends SimpleWebFileLoader {
@@ -29,4 +32,26 @@
return false;
}
+ protected String loadNamespace(Element element, XModelObject object) {
+ NamespaceMapping namespaceMapping =
CDINamespaces.getInstance(object.getModel().getMetaData(),
getVersionSuffix(object)).getNamespaceMapping(element);
+ object.set(NamespaceMapping.ATTR_NAMESPACE_MAPPING, namespaceMapping.toString());
//$NON-NLS-1$
+ util.setNamespaceMapping(namespaceMapping);
+
+ return super.loadNamespace(element, object);
+ }
+
+ public String serializeObject(XModelObject object) {
+ String rootName = getRootName(object);
+ Element element = createRootElement(rootName, null, null);
+ CDINamespaces.getInstance(object.getModel().getMetaData(),
getVersionSuffix(object)).validateNamespaces(object, element);
+ NamespaceMapping namespaceMapping = NamespaceMapping.load(object);
+ util.setNamespaceMapping(namespaceMapping);
+ return serializeToElement(element, object);
+ }
+
+ private String getVersionSuffix(XModelObject o) {
+// String entity = o.getModelEntity().getName();
+ return ""; //$NON-NLS-1$
+ }
+
}
Added:
trunk/cdi/plugins/org.jboss.tools.cdi.xml/src/org/jboss/tools/cdi/xml/beans/model/CDINamespaces.java
===================================================================
---
trunk/cdi/plugins/org.jboss.tools.cdi.xml/src/org/jboss/tools/cdi/xml/beans/model/CDINamespaces.java
(rev 0)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.xml/src/org/jboss/tools/cdi/xml/beans/model/CDINamespaces.java 2010-09-03
12:57:06 UTC (rev 24693)
@@ -0,0 +1,135 @@
+/*******************************************************************************
+ * 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.cdi.xml.beans.model;
+
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import org.jboss.tools.common.meta.XMapping;
+import org.jboss.tools.common.meta.XModelMetaData;
+import org.jboss.tools.common.model.XModelObject;
+import org.jboss.tools.common.model.util.NamespaceMapping;
+import org.jboss.tools.common.model.util.XModelObjectLoaderUtil;
+import org.w3c.dom.Element;
+import org.w3c.dom.NamedNodeMap;
+import org.w3c.dom.Node;
+
+public class CDINamespaces {
+ private static Map<String,CDINamespaces> map = new HashMap<String,
CDINamespaces>();
+
+ public static CDINamespaces getInstance(XModelMetaData meta, String version) {
+ CDINamespaces instance = map.get(version);
+ if(instance == null) {
+ instance = new CDINamespaces(meta, version);
+ }
+ return instance;
+ }
+
+ String versionSuffix = null;
+
+ private Map<String, String> namespaceToURI = new HashMap<String, String>();
+ private Map<String, String> uriToNamespace = new HashMap<String, String>();
+ private Map<String, String> namespaceToSchema = new HashMap<String,
String>();
+
+ private CDINamespaces(XModelMetaData meta, String versionSuffix) {
+ XMapping m = meta.getMapping("CDINamespaces"); //$NON-NLS-1$
+ if(m == null) return;
+ this.versionSuffix = versionSuffix;
+ String[] keys = m.getKeys();
+ for (int i = 0; i < keys.length; i++) {
+ String v = m.getValue(keys[i]);
+ namespaceToURI.put(keys[i], v);
+ uriToNamespace.put(v, keys[i]);
+ }
+ m = meta.getMapping("CDISchemas"); //$NON-NLS-1$
+ if(m == null) return;
+ keys = m.getKeys();
+ for (int i = 0; i < keys.length; i++) {
+ if(!keys[i].endsWith(versionSuffix)) continue;
+ String v = m.getValue(keys[i]);
+ String key = keys[i].substring(0, keys[i].length() - versionSuffix.length());
+ namespaceToSchema.put(key, v);
+ }
+ }
+
+ static String XMLNS_PREFIX = "xmlns:"; //$NON-NLS-1$
+
+ public NamespaceMapping getNamespaceMapping(Element element) {
+ NamespaceMapping mapping = new NamespaceMapping();
+ NamedNodeMap as = element.getAttributes();
+ for (int i = 0; i < as.getLength(); i++) {
+ Node n = as.item(i);
+ String name = n.getNodeName();
+ if(name.startsWith(XMLNS_PREFIX)) {
+ String actualNamespace = name.substring(XMLNS_PREFIX.length());
+ String uri = n.getNodeValue();
+ String defaultNamespace = getDefaultNamespace(uri);
+ if(defaultNamespace == null) {
+ defaultNamespace = name.substring(XMLNS_PREFIX.length());
+ }
+ if(defaultNamespace == null) continue;
+ mapping.addNamespace(defaultNamespace, actualNamespace, uri);
+ }
+ }
+ return mapping;
+ }
+
+ public String getDefaultNamespace(String uri) {
+ return uriToNamespace.get(uri);
+ }
+
+ public String getURI(String namespace) {
+ return namespaceToURI.get(namespace);
+ }
+
+ public String getSchema(String namespace) {
+ return namespaceToSchema.get(namespace);
+ }
+
+ public void validateNamespaces(XModelObject object, Element element) {
+ NamespaceMapping namespaceMapping = NamespaceMapping.load(object);
+ if(namespaceMapping == null) namespaceMapping = new NamespaceMapping();
+ StringBuffer loc = new StringBuffer();
+ loc.append(object.getAttributeValue("xsi:schemaLocation")); //$NON-NLS-1$
+ XModelObject[] cs = object.getChildren();
+ Set<String> ns = new HashSet<String>();
+ for (int i = 0; i < cs.length; i++) {
+ String n = null;
+ if(cs[i].getModelEntity().getName().equals(XModelObjectLoaderUtil.ENT_ANY_ELEMENT)) {
+ n = cs[i].getAttributeValue("tag");
+ } else {
+ n = cs[i].getModelEntity().getXMLSubPath();
+ }
+ int k = n.indexOf(':');
+ if(k < 0) continue;
+ String defaultNamespace = n.substring(0, k);
+ if(ns.contains(defaultNamespace)) continue;
+ ns.add(defaultNamespace);
+ String uri = getURI(defaultNamespace);
+ if(uri == null) {
+ uri = namespaceMapping.getURIForDefaultNamespace(defaultNamespace);
+ }
+ if(uri == null) continue;
+ String actualNamespace = namespaceMapping.getActualNamespace(defaultNamespace);
+ if(actualNamespace == null) actualNamespace = defaultNamespace;
+ element.setAttribute(XMLNS_PREFIX + actualNamespace, uri);
+ String schema = getSchema(defaultNamespace);
+ if(loc.indexOf(uri) < 0) {
+ loc.append(' ').append(uri).append(' ').append(schema);
+ }
+
+ }
+ object.setAttributeValue("xsi:schemaLocation", loc.toString());
//$NON-NLS-1$
+ }
+
+}
Property changes on:
trunk/cdi/plugins/org.jboss.tools.cdi.xml/src/org/jboss/tools/cdi/xml/beans/model/CDINamespaces.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain