From jbosstools-commits at lists.jboss.org Mon Jul 30 19:15:59 2012 Content-Type: multipart/mixed; boundary="===============0568851198498574089==" MIME-Version: 1.0 From: jbosstools-commits at lists.jboss.org To: jbosstools-commits at lists.jboss.org Subject: [jbosstools-commits] JBoss Tools SVN: r42791 - in trunk: jsf/tests/org.jboss.tools.jsf.ui.test/src/org/jboss/tools/jsf/ui/test and 1 other directories. Date: Mon, 30 Jul 2012 19:15:58 -0400 Message-ID: <201207302315.q6UNFweV010111@svn01.web.mwc.hst.phx2.redhat.com> --===============0568851198498574089== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Author: dazarov Date: 2012-07-30 19:15:57 -0400 (Mon, 30 Jul 2012) New Revision: 42791 Modified: trunk/jsf/tests/org.jboss.tools.jsf.ui.test/projects/test_jsf_project/We= bContent/pages/test_page2.xhtml trunk/jsf/tests/org.jboss.tools.jsf.ui.test/src/org/jboss/tools/jsf/ui/t= est/JSPProblemMarkerResolutionTest.java trunk/jst/plugins/org.jboss.tools.jst.web.ui/src/org/jboss/tools/jst/web= /ui/action/AddTLDMarkerResolution.java trunk/jst/plugins/org.jboss.tools.jst.web.ui/src/org/jboss/tools/jst/web= /ui/action/JSPProblemMarkerResolutionGenerator.java Log: Make Quick Fix "Add tag library definition" work with KB Model instead of u= sing plain tag library list https://issues.jboss.org/browse/JBIDE-12304 Modified: trunk/jsf/tests/org.jboss.tools.jsf.ui.test/projects/test_jsf_pro= ject/WebContent/pages/test_page2.xhtml =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/jsf/tests/org.jboss.tools.jsf.ui.test/projects/test_jsf_project/W= ebContent/pages/test_page2.xhtml 2012-07-30 23:08:26 UTC (rev 42790) +++ trunk/jsf/tests/org.jboss.tools.jsf.ui.test/projects/test_jsf_project/W= ebContent/pages/test_page2.xhtml 2012-07-30 23:15:57 UTC (rev 42791) @@ -1,7 +1,6 @@ + xmlns:ui=3D"http://java.sun.com/jsf/facelets"> = Modified: trunk/jsf/tests/org.jboss.tools.jsf.ui.test/src/org/jboss/tools/j= sf/ui/test/JSPProblemMarkerResolutionTest.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/jsf/tests/org.jboss.tools.jsf.ui.test/src/org/jboss/tools/jsf/ui/= test/JSPProblemMarkerResolutionTest.java 2012-07-30 23:08:26 UTC (rev 42790) +++ trunk/jsf/tests/org.jboss.tools.jsf.ui.test/src/org/jboss/tools/jsf/ui/= test/JSPProblemMarkerResolutionTest.java 2012-07-30 23:15:57 UTC (rev 42791) @@ -1,7 +1,6 @@ package org.jboss.tools.jsf.ui.test; = import java.lang.reflect.InvocationTargetException; -import java.util.ArrayList; import java.util.Iterator; import java.util.List; = @@ -9,7 +8,6 @@ import org.eclipse.core.resources.IMarker; import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.IResource; -import org.eclipse.core.resources.IncrementalProjectBuilder; import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.NullProgressMonitor; @@ -17,7 +15,6 @@ import org.eclipse.jface.text.BadLocationException; import org.eclipse.jface.text.IDocument; import org.eclipse.jface.text.IRegion; -import org.eclipse.jface.text.Position; import org.eclipse.jface.text.source.IAnnotationModel; import org.eclipse.jface.text.source.SourceViewer; import org.eclipse.jst.jsp.ui.internal.validation.JSPContentSourceValidato= r; @@ -161,17 +158,22 @@ = IMarker[] markers =3D findMarkers(jspFile, JSP_MARKER_TYPE, "Unknown tag= (h:commandButton)."); = - assertEquals(1, markers.length); + assertEquals("Should be 1 marker here", 1, markers.length); = JSPProblemMarkerResolutionGenerator generator =3D new JSPProblemMarkerRe= solutionGenerator(); + = + boolean found =3D false; = for(IMarker marker : markers){ generator.hasResolutions(marker); IMarkerResolution[] resolutions =3D generator.getResolutions(marker); for(IMarkerResolution resolution : resolutions){ resolution.run(marker); + found =3D true; } } + = + assertTrue("AddTLDMarkerResolution not found", found); = validate(jspFile); = @@ -185,25 +187,30 @@ = validate(jspFile); = - assertMarkerIsCreated(jspFile, XHTML_MARKER_TYPE, "Unknown tag (ui:inser= t).", true, 8, 17, 31); + assertMarkerIsCreated(jspFile, XHTML_MARKER_TYPE, "Unknown tag (f:loadBu= ndle).", true, 5); = - IMarker[] markers =3D findMarkers(jspFile, XHTML_MARKER_TYPE, "Unknown t= ag (ui:insert)."); + IMarker[] markers =3D findMarkers(jspFile, XHTML_MARKER_TYPE, "Unknown t= ag (f:loadBundle)."); = - assertEquals(3, markers.length); + assertEquals("Should be 1 marker here", 1, markers.length); = JSPProblemMarkerResolutionGenerator generator =3D new JSPProblemMarkerRe= solutionGenerator(); + = + boolean found =3D false; = for(IMarker marker : markers){ generator.hasResolutions(marker); IMarkerResolution[] resolutions =3D generator.getResolutions(marker); for(IMarkerResolution resolution : resolutions){ resolution.run(marker); + found =3D true; } } + = + assertTrue("AddTLDMarkerResolution not found", found); = validate(jspFile); = - assertMarkerIsNotCreated(jspFile, XHTML_MARKER_TYPE, "Unknown tag (ui:in= sert)."); + assertMarkerIsNotCreated(jspFile, XHTML_MARKER_TYPE, "Unknown tag (f:loa= dBundle)."); } = public void testQuickFixesForTemporaryAnnotationInJSP() throws PartInitEx= ception, BadLocationException{ Modified: trunk/jst/plugins/org.jboss.tools.jst.web.ui/src/org/jboss/tools/= jst/web/ui/action/AddTLDMarkerResolution.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/jst/plugins/org.jboss.tools.jst.web.ui/src/org/jboss/tools/jst/we= b/ui/action/AddTLDMarkerResolution.java 2012-07-30 23:08:26 UTC (rev 42790) +++ trunk/jst/plugins/org.jboss.tools.jst.web.ui/src/org/jboss/tools/jst/we= b/ui/action/AddTLDMarkerResolution.java 2012-07-30 23:15:57 UTC (rev 42791) @@ -60,14 +60,6 @@ this.prefix =3D prefix; } = - public AddTLDMarkerResolution(String name, int start, int end, String uri= , String prefix){ - this.resolutionName =3D name; - this.start =3D start; - this.end =3D end; - this.uri =3D uri; - this.prefix =3D prefix; - } - = private Properties getProperties(){ Properties properties =3D new Properties(); properties.put(JSPPaletteInsertHelper.PROPOPERTY_ADD_TAGLIB, "true"); //= $NON-NLS-1$ @@ -101,9 +93,13 @@ public String getLabel() { return NLS.bind(Messages.AddTLDMarkerResolution_Name, resolutionName); } - + = @Override public void run(IMarker marker) { + if(!JSPProblemMarkerResolutionGenerator.validatePrefix(file, start, pref= ix)){ + return; + } + = FileEditorInput input =3D new FileEditorInput(file); IDocumentProvider provider =3D DocumentProviderRegistry.getDefault().get= DocumentProvider(input); try { @@ -140,7 +136,10 @@ = @Override public void apply(IDocument document) { - = + if(!JSPProblemMarkerResolutionGenerator.validatePrefix(file, start, pref= ix)){ + return; + } + Properties properties =3D getProperties(); = PaletteTaglibInserter.getPrefixes(document, properties); Modified: trunk/jst/plugins/org.jboss.tools.jst.web.ui/src/org/jboss/tools/= jst/web/ui/action/JSPProblemMarkerResolutionGenerator.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/jst/plugins/org.jboss.tools.jst.web.ui/src/org/jboss/tools/jst/we= b/ui/action/JSPProblemMarkerResolutionGenerator.java 2012-07-30 23:08:26 UT= C (rev 42790) +++ trunk/jst/plugins/org.jboss.tools.jst.web.ui/src/org/jboss/tools/jst/we= b/ui/action/JSPProblemMarkerResolutionGenerator.java 2012-07-30 23:15:57 UT= C (rev 42791) @@ -64,6 +64,23 @@ return new IMarkerResolution[]{}; } = + public static boolean validatePrefix(IFile file, int start, String prefix= ){ + ELContext context =3D PageContextFactory.createPageContext(file); + if(context instanceof XmlContextImpl){ + Map> nameSpaces =3D ((XmlContextImpl) context= ).getNameSpaces(start); + Iterator> iterator =3D nameSpaces.values().iterator(); + while(iterator.hasNext()){ + List list =3D iterator.next(); + for(INameSpace ns : list){ + if(prefix.equals(ns.getPrefix())){ + return false; + } + } + } + } + return true; + } + = private IJavaCompletionProposal[] isOurCase(Annotation annotation){ ArrayList proposals =3D new ArrayList(); if(!(annotation instanceof TemporaryAnnotation)){ @@ -94,18 +111,8 @@ if(file =3D=3D null) return new IJavaCompletionProposal[]{}; = - ELContext context =3D PageContextFactory.createPageContext(file); - if(context instanceof XmlContextImpl){ - Map> nameSpaces =3D ((XmlContextImpl) context= ).getNameSpaces(start); - Iterator> iterator =3D nameSpaces.values().iterator(); - while(iterator.hasNext()){ - List list =3D iterator.next(); - for(INameSpace ns : list){ - if(prefix.equals(ns.getPrefix())){ - return new IJavaCompletionProposal[]{}; - } - } - } + if(!validatePrefix(file, start, prefix)){ + return new IJavaCompletionProposal[]{}; } = Object additionalInfo =3D ta.getAdditionalFixInfo(); @@ -126,7 +133,7 @@ String uri =3D ns.getURI(); String resolutionName =3D getResolutionName(xmlDocument !=3D null && = xmlDocument.isXMLType(), true, prefix, uri); if(resolutionName !=3D null && !names.contains(resolutionName) && l.g= etComponent(tagName) !=3D null){ - proposals.add(new AddTLDMarkerResolution(resolutionName, start, end,= uri, prefix)); + proposals.add(new AddTLDMarkerResolution(file, resolutionName, start= , end, uri, prefix)); names.add(resolutionName); } } @@ -140,7 +147,7 @@ String uri =3D l.getURI(); String resolutionName =3D getResolutionName(xmlDocument !=3D null && x= mlDocument.isXMLType(), true, prefix, uri); if(resolutionName !=3D null && !names.contains(resolutionName) && l.ge= tComponent(tagName) !=3D null){ - proposals.add(new AddTLDMarkerResolution(resolutionName, start, end, = uri, prefix)); + proposals.add(new AddTLDMarkerResolution(file, resolutionName, start,= end, uri, prefix)); names.add(resolutionName); } } @@ -186,18 +193,8 @@ = IFile file =3D (IFile)marker.getResource(); = - ELContext context =3D PageContextFactory.createPageContext(file); - if(context instanceof XmlContextImpl){ - Map> nameSpaces =3D ((XmlContextImpl) context= ).getNameSpaces(start); - Iterator> iterator =3D nameSpaces.values().iterator(); - while(iterator.hasNext()){ - List list =3D iterator.next(); - for(INameSpace ns : list){ - if(prefix.equals(ns.getPrefix())){ - return new IMarkerResolution[]{}; - } - } - } + if(!validatePrefix(file, start, prefix)){ + return new IMarkerResolution[]{}; } = IKbProject kbProject =3D KbProjectFactory.getKbProject(file.getProject()= , true); --===============0568851198498574089==--