[jbosstools-issues] [JBoss JIRA] Updated: (JBIDE-509) intelligent navigation support for seam variable names

Victor Rubezhny (JIRA) jira-events at lists.jboss.org
Mon Feb 11 08:48:04 EST 2008


     [ http://jira.jboss.com/jira/browse/JBIDE-509?page=all ]

Victor Rubezhny updated JBIDE-509:
----------------------------------

    Description: 
@DataModel                                                                            
private List<Message> messageList;

@Factory("messageList")                                                               
public void findMessages()
  {
     messageList = em.createQuery("from Message msg order by msg.datetime desc").getResultList();
  }

- link from messageList to its @Factory method, and link from "messageList" to the property.
- ctrl+G shows related locations in .java, .xhtml, components.xml, etc.



Case: Link from the Seam Variable Name in the @Factory annotation value attribute to its declaration (for example, @Factory("mess|ageList"), where "|" is the current cursor position): 

1.a. User moves the mouse cursor over the Seam Variable Name in the value of the @Factory annotation within the component while Ctrl key is pressed. The variable is highlighted and underlined in the editor. User clicks left mouse button while Ctrl-key still is pressed. 
- or - 
1.b. User sets the cursor into or selects the Seam Variable Name in the value of the @Factory annotation within the component and then presses F3 key. 

2. The following steps will be performed: 
2.a. If return type of the selected factory method is void we have to search for the declaration (@Out/@DataBinder) in the same component. If it is found it will be revealed and selected in the editor 
(if it is contained in super-class, the appropriate class will be openned in the editor). 
2.b Else if return type of the selected factory method is not void then the factory itself decrares the Seam variable - the factory itself to be selected. 


Case: Link from Seam Variable name used in Seam EL expression (XHTML/XML/Java Strings in JavaEditor) to it's declaration/factory (for example, #{mess|ageList.size}, where "|" is the current cursor position): 

1.a. User moves the mouse cursor over the Seam Variable Name in the Seam EL expression while Ctrl key is pressed. The variable is highlighted and underlined in the editor. User clicks left mouse button while Ctrl-key still is pressed. 

- or - 

1.b. User sets the cursor into or selects the Seam Variable Name in the Seam EL expression and then presses F3 key. 

2. The following steps will be performed: 
2.a. The @Name or @Role annotations with the same name will be found in the Seam model of the project. If there will be at least one @Name or @Role annotation found the source file with that annotation will be opened in the editor (or brought to front if the editor is already openned), and the annotation found will be revealed and selected in the editor. 
2.b. If not, The @Factory annotation with the same name will be found in the Seam model of the project. If there will be at least one @Factory annotation found the source file with that annotation will be opened in the editor (or brought to front if the editor is already openned), and the annotation found will be revealed and selected in the editor. 
2.c. If not, The @Out/@DataBinder annotation with the same name will be found in the Seam model of the project. If there will be at least one @Out/@DataBinder annotation found the source file with that annotation will be opened in the editor (or brought to front if the editor is already openned), and the annotation found will be revealed and selected in the editor. 
2.d. If not, no linkage will be performed. Error message will appear in the editor's status line 


Case: Find References of a Seam Variable (Ctrl-Shift-G). 

1. User selects the Seam Variable Name in Seam EL expression (XHTML/JSP/XML files) or in value attribute of annotations @Name/@Role/@Factory/@In/@Out/@DataBinder in component class file or in components.xml file and then presses Ctrl-Shift-G to find the references to variables those name equals the name of selected variable. 
2. The references to selected variable will be searched through the files of Seam model referenced projects (Seam model may contain the references to more that one project), the @In annotation are also to be search. 
3. The Search View will be openned and will show the results of search performed. 


Case: Find Declarations of a Seam Variable (Ctrl-G). 

1. User selects the Seam Variable Name in Seam EL expression (XHTML/JSP/XML files) or in value attribute of annotations @Name/@Role/@Factory/@In/@Out/@DataBinder in component class file or in components.xml file and then presses Ctrl-G to find the declarations of variables named as the selected variable. 
2. The declarations of selected variable will be searched through the Seam model (@Name, @Role, @Out/DataBinder annotations and components.xml files). 
3. The Search View will be openned and will show the results of search performed. 


  was:
@DataModel                                                                            
private List<Message> messageList;

@Factory("messageList")                                                               
public void findMessages()
  {
     messageList = em.createQuery("from Message msg order by msg.datetime desc").getResultList();
  }

- link from messageList to its @Factory method, and link from "messageList" to the property.
- ctrl+G shows related locations in .java, .xhtml, components.xml, etc.



Case: Link from the Seam Variable Name in the @Factory annotation value attribute to its declaration (for example, @Factory("mess|ageList"), where "|" is the current cursor position): 

1.a. User moves the mouse cursor over the Seam Variable Name in the value of the @Factory annotation within the component while Ctrl key is pressed. The variable is highlighted and underlined in the editor. User clicks left mouse button while Ctrl-key still is pressed. 
- or - 
1.b. User sets the cursor into or selects the Seam Variable Name in the value of the @Factory annotation within the component and then presses F3 key. 

2. The following steps will be performed: 
2.a. If return type of the selected factory method is void we have to search for the declaration (@Out/@DataBinder) in the same component. If it is found it will be revealed and selected in the editor 
(if it is contained in super-class, the appropriate class will be openned in the editor). 
2.b Else if return type of the selected factory method is not void then the factory itself decrares the Seam variable - the factory itself to be selected. 


Case: Link from Seam Variable name used in Seam EL expression (XHTML/XML/Java Strings in JavaEditor) to it's declaration/factory (for example, #{mess|ageList.size}, where "|" is the current cursor position): 

1.a. User moves the mouse cursor over the Seam Variable Name in the Seam EL expression while Ctrl key is pressed. The variable is highlighted and underlined in the editor. User clicks left mouse button while Ctrl-key still is pressed. 

- or - 

1.b. User sets the cursor into or selects the Seam Variable Name in the Seam EL expression and then presses F3 key. 

2. The following steps will be performed: 
2.a. The @Name or @Role annotations with the same name will be found in the Seam model of the project. If there will be at least one @Name or @Role annotation found the source file with that annotation will be opened in the editor (or brought to front if the editor is already openned), and the annotation found will be revealed and selected in the editor. 
2.b. If not, The @Factory annotation with the same name will be found in the Seam model of the project. If there will be at least one @Factory annotation found the source file with that annotation will be opened in the editor (or brought to front if the editor is already openned), and the annotation found will be revealed and selected in the editor. 
2.c. If not, The @Out/@DataBinder annotation with the same name will be found in the Seam model of the project. If there will be at least one @Out/@DataBinder annotation found the source file with that annotation will be opened in the editor (or brought to front if the editor is already openned), and the annotation found will be revealed and selected in the editor. 
2.d. If not, no linkage will be performed. Error message will appear in the editor's status line 


Case: Find References of a Seam Variable (Ctrl-Shift-G). 
1. User selects the Seam Variable Name in Seam EL expression (XHTML/JSP/XML files) or in value attribute of annotations @Name/@Role/@Factory/@In/@Out/@DataBinder in component class file or in components.xml file and then presses Ctrl-Shift-G to find the references to variables those name equals the name of selected variable. 
2. The references to selected variable will be searched through the files of Seam model referenced projects (Seam model may contain the references to more that one project), the @In annotation are also to be search. 
3. The Search View will be openned and will show the results of search performed. 


Case: Find References of a Seam Variable (Ctrl-Shift-G). 
1. User selects the Seam Variable Name in Seam EL expression (XHTML/JSP/XML files) or in value attribute of annotations @Name/@Role/@Factory/@In/@Out/@DataBinder in component class file or in components.xml file and then presses Ctrl-Shift-G to find the references to variables those name equals the name of selected variable. 
2. The references to selected variable will be searched through the files of Seam model referenced projects (Seam model may contain the references to more that one project), the @In annotation are also to be search. 
3. The Search View will be openned and will show the results of search performed.


Case: Find Declarations of a Seam Variable (Ctrl-G). 
1. User selects the Seam Variable Name in Seam EL expression (XHTML/JSP/XML files) or in value attribute of annotations @Name/@Role/@Factory/@In/@Out/@DataBinder in component class file or in components.xml file and then presses Ctrl-G to find the declarations of variables named as the selected variable. 
2. The declarations of selected variable will be searched through the Seam model (@Name, @Role, @Out/DataBinder annotations and components.xml files). 
3. The Search View will be openned and will show the results of search performed. 
[ Show » ] Victor Rubezhny [08/Feb/08 11:28 AM] Case: Find Declarations of a Seam Variable (Ctrl-G). 1. User selects the Seam Variable Name in Seam EL expression (XHTML/JSP/XML files) or in value attribute of annotations @Name/@Role/@Factory/@In/@Out/@DataBinder in component class file or in components.xml file and then presses Ctrl-G to find the declarations of variables named as the selected variable. 2. The declarations of selected variable will be searched through the Seam model (@Name, @Role, @Out/DataBinder annotations and components.xml files). 3. The Search View will be openned and will show the results of search performed. 


> intelligent navigation support for seam variable names
> ------------------------------------------------------
>
>                 Key: JBIDE-509
>                 URL: http://jira.jboss.com/jira/browse/JBIDE-509
>             Project: Tools (JBoss Tools)
>          Issue Type: Feature Request
>          Components: Seam
>            Reporter: Max Andersen
>         Assigned To: Victor Rubezhny
>             Fix For: 2.1
>
>
> @DataModel                                                                            
> private List<Message> messageList;
> @Factory("messageList")                                                               
> public void findMessages()
>   {
>      messageList = em.createQuery("from Message msg order by msg.datetime desc").getResultList();
>   }
> - link from messageList to its @Factory method, and link from "messageList" to the property.
> - ctrl+G shows related locations in .java, .xhtml, components.xml, etc.
> Case: Link from the Seam Variable Name in the @Factory annotation value attribute to its declaration (for example, @Factory("mess|ageList"), where "|" is the current cursor position): 
> 1.a. User moves the mouse cursor over the Seam Variable Name in the value of the @Factory annotation within the component while Ctrl key is pressed. The variable is highlighted and underlined in the editor. User clicks left mouse button while Ctrl-key still is pressed. 
> - or - 
> 1.b. User sets the cursor into or selects the Seam Variable Name in the value of the @Factory annotation within the component and then presses F3 key. 
> 2. The following steps will be performed: 
> 2.a. If return type of the selected factory method is void we have to search for the declaration (@Out/@DataBinder) in the same component. If it is found it will be revealed and selected in the editor 
> (if it is contained in super-class, the appropriate class will be openned in the editor). 
> 2.b Else if return type of the selected factory method is not void then the factory itself decrares the Seam variable - the factory itself to be selected. 
> Case: Link from Seam Variable name used in Seam EL expression (XHTML/XML/Java Strings in JavaEditor) to it's declaration/factory (for example, #{mess|ageList.size}, where "|" is the current cursor position): 
> 1.a. User moves the mouse cursor over the Seam Variable Name in the Seam EL expression while Ctrl key is pressed. The variable is highlighted and underlined in the editor. User clicks left mouse button while Ctrl-key still is pressed. 
> - or - 
> 1.b. User sets the cursor into or selects the Seam Variable Name in the Seam EL expression and then presses F3 key. 
> 2. The following steps will be performed: 
> 2.a. The @Name or @Role annotations with the same name will be found in the Seam model of the project. If there will be at least one @Name or @Role annotation found the source file with that annotation will be opened in the editor (or brought to front if the editor is already openned), and the annotation found will be revealed and selected in the editor. 
> 2.b. If not, The @Factory annotation with the same name will be found in the Seam model of the project. If there will be at least one @Factory annotation found the source file with that annotation will be opened in the editor (or brought to front if the editor is already openned), and the annotation found will be revealed and selected in the editor. 
> 2.c. If not, The @Out/@DataBinder annotation with the same name will be found in the Seam model of the project. If there will be at least one @Out/@DataBinder annotation found the source file with that annotation will be opened in the editor (or brought to front if the editor is already openned), and the annotation found will be revealed and selected in the editor. 
> 2.d. If not, no linkage will be performed. Error message will appear in the editor's status line 
> Case: Find References of a Seam Variable (Ctrl-Shift-G). 
> 1. User selects the Seam Variable Name in Seam EL expression (XHTML/JSP/XML files) or in value attribute of annotations @Name/@Role/@Factory/@In/@Out/@DataBinder in component class file or in components.xml file and then presses Ctrl-Shift-G to find the references to variables those name equals the name of selected variable. 
> 2. The references to selected variable will be searched through the files of Seam model referenced projects (Seam model may contain the references to more that one project), the @In annotation are also to be search. 
> 3. The Search View will be openned and will show the results of search performed. 
> Case: Find Declarations of a Seam Variable (Ctrl-G). 
> 1. User selects the Seam Variable Name in Seam EL expression (XHTML/JSP/XML files) or in value attribute of annotations @Name/@Role/@Factory/@In/@Out/@DataBinder in component class file or in components.xml file and then presses Ctrl-G to find the declarations of variables named as the selected variable. 
> 2. The declarations of selected variable will be searched through the Seam model (@Name, @Role, @Out/DataBinder annotations and components.xml files). 
> 3. The Search View will be openned and will show the results of search performed. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       




More information about the jbosstools-issues mailing list