Package org.eclipse.wst.xml.core.internal.provisional.document

Examples of org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel


  protected ICompletionProposal[] computeCompletionProposals(ITextViewer viewer, int pos, int javaPositionExtraOffset) {
    initialize(pos);

    JSPProposalCollector collector = null;
   
    IDOMModel xmlModel = null;
    try {
      if (viewer instanceof StructuredTextViewer)
        fViewer = (StructuredTextViewer) viewer;

      xmlModel = (IDOMModel) StructuredModelManager.getModelManager().getExistingModelForRead(fViewer.getDocument());

      IDOMDocument xmlDoc = xmlModel.getDocument();
      if (fTranslationAdapter == null || xmlModel.getId() != fModelId) {
        fTranslationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
        fModelId = xmlModel.getId();
      }
      if (fTranslationAdapter != null) {

        JSPTranslation translation = fTranslationAdapter.getJSPTranslation();
        fJavaPosition = translation.getJavaOffset(getDocumentPosition())+javaPositionExtraOffset;

        if (DEBUG)
          System.out.println(debug(translation));

        try {

          ICompilationUnit cu = translation.getCompilationUnit();

          // can't get java proposals w/out a compilation unit
          // or without a valid position
          if (cu == null || -1 == fJavaPosition)
            return new ICompletionProposal[0];
         
          collector = getProposalCollector(cu, translation);
          synchronized (cu) {
            cu.codeComplete(fJavaPosition, collector, (WorkingCopyOwner) null);
          }
        }
        catch (CoreException coreEx) {
          // a possible Java Model Exception due to not being a Web
          // (Java) Project
          coreEx.printStackTrace();
        }
      }
    }
    catch (Exception exc) {
      exc.printStackTrace();
      // throw out exceptions on code assist.
    }
    finally {
      if (xmlModel != null) {
        xmlModel.releaseFromRead();
      }
    }
    ICompletionProposal[] results = new ICompletionProposal[0];
    if(collector != null) {
      results = collector.getJSPCompletionProposals();
View Full Code Here


                    // lock already and has called through here before.
                    // return immediately to ensure that we don't recurse
                    // infinitely
                    return;
                }
                IDOMModel model = null;
                try
                {
                    // only refresh if forced or if the underlying file has
                    // changed
                    // since the last run
                    if (_forceRefresh || isModelDirty())
                    {
                        model = getModelForFile(_file);
                        if (model != null)
                        {
                            refreshInternal(model);
                        }
                        _lastModificationStampMonitor.setModificationStamp(_file.getModificationStamp());
                    }
                }
                catch (final IOException e)
                {
                    IStatus status = new Status(IStatus.ERROR, JSFCorePlugin.PLUGIN_ID,"Error refreshing internal model", e); //$NON-NLS-1$
                    final CoreException e2 = new CoreException(status);
                    throw e2;
                }
                // make sure that we unsignal the monitor before releasing the
                // mutex
                finally
                {
                    _lastModificationStampMonitor.setSignalled(false);
                    if (model != null)
                    {
                        model.releaseFromRead();
                    }
                }
            }
        }
View Full Code Here

    {
        final IDOMPosition domPosition = getDomPosition();
        final QName containerQName = getContainerTag().asQName();

        IDOMPosition newPosition = domPosition;
        final IDOMModel model = ((IDOMNode) domPosition.getContainerNode())
                .getModel();

        final IFile fileForDocument = ResolverUtil.getFileForDocument(model.getStructuredDocument());   
        final ITagDropSourceData creationProvider = TagToolCreationAdapter
                .findProviderForContainer(containerQName, PaletteItemManager.createPaletteContext(fileForDocument));

        newPosition = ValidatorSupport.insertContainer(domPosition,
                model, creationProvider, getContainerCustomizationData());
View Full Code Here

  void performValidation(IFile f, IReporter reporter, IStructuredModel model) {
    for (int i = 0; i < DEPEND_ONs.length; i++) {
      addDependsOn(f.getProject().getFile(DEPEND_ONs[i]))
    }
    if (model instanceof IDOMModel) {
      IDOMModel domModel = (IDOMModel) model;
      ModelHandlerForJSP.ensureTranslationAdapterFactory(domModel);

      IDOMDocument xmlDoc = domModel.getDocument();
      JSPTranslationAdapter translationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
      IJSPTranslation translation = translationAdapter.getJSPTranslation();

      if (!reporter.isCancelled()) {
        loadPreferences(f);

        // only update task markers if the model is the same as what's on disk
        boolean updateJavaTasks = UPDATE_JAVA_TASKS && !domModel.isDirty() && f != null && f.isAccessible();
        if (updateJavaTasks) {
          // remove old Java task markers
          try {
            IMarker[] foundMarkers = f.findMarkers(JAVA_TASK_MARKER_TYPE, true, IResource.DEPTH_ONE);
            for (int i = 0; i < foundMarkers.length; i++) {
              foundMarkers[i].delete();
            }
          }
          catch (CoreException e) {
            Logger.logException(e);
          }
        }

        translation.setProblemCollectingActive(true);
        translation.reconcileCompilationUnit();
        List problems = translation.getProblems();
        // add new messages
        for (int i = 0; i < problems.size() && !reporter.isCancelled(); i++) {
          IProblem problem = (IProblem) problems.get(i);
          IMessage m = createMessageFromProblem(problem, f, translation, domModel.getStructuredDocument());
          if (m != null) {
            if (problem.getID() == IProblem.Task) {
              if (updateJavaTasks) {
                // add new Java task marker
                try {
View Full Code Here

   * Element.
   */
  protected IProject getProject(final Element element) {
    IProject project = null;
    if (element instanceof IDOMNode) {
      final IDOMModel model = ((IDOMNode)element).getModel();
      if (model != null) {
        project = StructuredModelUtil.getProjectFor(model);
      }
    }
    return project;
View Full Code Here

   * Element.
   */
  protected IFile getFile(final Element element) {
    IFile file = null;
    if (element instanceof IDOMNode) {
      final IDOMModel model = ((IDOMNode)element).getModel();
      if (model != null) {
        file = StructuredModelUtil.getFileFor(model);
      }
    }
    return file;
View Full Code Here

     */
    private String getAppConfigFileVersion(final FacesConfigArtifactEdit facesConfigEdit)
    {
        String appConfigVersion = null;

        final IDOMModel domModel = facesConfigEdit.getIDOMModel();
        final IDOMDocument document = domModel.getDocument();
        if (document == null) {return null;}

        final DocumentType docType = domModel.getDocument().getDoctype();

        // if we have DTD doctype then we're looking at 1.1 or before
        if (docType != null)
        {
            appConfigVersion = extractVersionFromPublicId(docType);
            // if not found in the public id, try the system id
            if (appConfigVersion == null)
            {
                appConfigVersion = extractVersionFromSystemId(docType);
            }
        }
        else
        {
            final NodeList rootNodes = domModel.getDocument().getChildNodes();

            for (int i = 0; i < rootNodes.getLength(); i++)
            {
                final Node node = rootNodes.item(i);
                if (node.getNodeType() == Node.ELEMENT_NODE
View Full Code Here

      throw new FileNotFoundException((file == null) ? "null" : file.getFullPath().toOSString()); //$NON-NLS-1$
    try {
      IModelManager manager = getModelManager();
      String id = manager.calculateId(file);     
      if (forWrite) {
        IDOMModel mod = (IDOMModel)manager.getExistingModelForEdit(id);
        if (mod == null)
          setXMLModel((IDOMModel) manager.getModelForEdit(file));
        else {
          setXMLModel(mod);
        }
      }
      else {
        IDOMModel mod = (IDOMModel)manager.getExistingModelForRead(id);
        if (mod == null)
          setXMLModel((IDOMModel) manager.getModelForRead(file));
        else {
          setXMLModel(mod);
        }
View Full Code Here

            }
          } 
        }
        else
        if (document.getModel() instanceof IDOMModel) {
      IDOMModel domModel = (IDOMModel) document.getModel();
      IDOMElement contextNode = (IDOMElement) domModel.getDocument()
          .getDocumentElement();
      DOMVisitor visitor = new DOMVisitor(document.getPath(), pattern,
          requestor);
      visitor.visit(contextNode);
    }
View Full Code Here

      Logger.log(Logger.INFO_DEBUG, "\tnewValue      : " + newValue); //$NON-NLS-1$
    }
  }

  protected void disableUndoManagementIfNecessary() {
    IDOMModel model = getXMLModel();
    if (model != null && model.getUndoManager() != null)
      model.disableUndoManagement();
  }
View Full Code Here

TOP

Related Classes of org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.