/** * @param label * @param model * @param position * @param tagItem */ public CreateItemCommand(String label, IDOMModel model, IDOMPosition position, TagToolPaletteEntry tagItem) { super(label, model.getDocument()); this._position = position; this._tagItem = tagItem; }
private IDOMNode insertStartTag(IDOMNode node) { IDOMNode newNode = node; if (isCommentTag(node)) return node; // do nothing String tagName = node.getNodeName(); String startTag = START_TAG_OPEN.concat(tagName).concat(TAG_CLOSE); int startTagStartOffset = node.getStartOffset(); IDOMModel structuredModel = node.getModel(); IStructuredDocument structuredDocument = structuredModel.getStructuredDocument(); structuredDocument.replaceText(structuredDocument, startTagStartOffset, 0, startTag); newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save // new // node return newNode; }
protected void formatChild(Element child) { if (child instanceof IDOMNode) { IDOMModel model = ((IDOMNode)child).getModel(); try { // tell the model that we are about to make a big model change model.aboutToChangeModel(); IStructuredFormatProcessor formatProcessor = new FormatProcessorXML(); formatProcessor.formatNode(child); } finally { // tell the model that we are done with the big model change model.changedModel(); } } }
/** * if preExecute() return true, then this method will always be called even * preExecute()/doExecute() and postExecute() fail. */ protected final void postExecute() { getModel().changedModel(); getModel().endRecording(this); setSelection(); }
/** * configure using an XMLNode * * @param node * @param monitor */ private void configure(IDOMNode node, IProgressMonitor monitor) { fProgressMonitor = monitor; fStructuredModel = node.getModel(); String baseLocation = fStructuredModel.getBaseLocation(); fELTranslatorID = getELTranslatorProperty(baseLocation); fStructuredDocument = fStructuredModel.getStructuredDocument(); String className = createClassname(node); if (className.length() > 0) { setClassname(className); fClassHeader = "public class " + className + " extends "; //$NON-NLS-1$ //$NON-NLS-2$ } }
domModel.aboutToChangeModel(); undo = domModel.getStructuredDocument().getUndoManager(); if(domModel.getStructuredDocument() instanceof IDocumentExtension4) { IDocumentExtension4 ext4 = (IDocumentExtension4) domModel.getStructuredDocument(); session = ext4.startRewriteSession(DocumentRewriteSessionType.UNRESTRICTED_SMALL); Document doc = domModel.getDocument(); if(doc.getDocumentElement() == null) { tuple.getOperation().process(domModel.getDocument()); } finally { if(!tuple.isReadOnly()) { undo.endRecording(domModel); if(session != null && domModel.getStructuredDocument() instanceof IDocumentExtension4) { IDocumentExtension4 ext4 = (IDocumentExtension4) domModel.getStructuredDocument(); ext4.stopRewriteSession(session); domModel.changedModel(); if(domModel != null) { if(tuple.isReadOnly()) { domModel.releaseFromRead(); } else if(domModel.getId() != null) { // id will be null for files outside of workspace if(tuple.isForceSave() || domModel.getReferenceCountForEdit() == 1) { domModel.save(); domModel.releaseFromEdit();
/** * set the XMLModel for this adapter. Must be called. * * @param xmlModel */ public void setXMLModel(IDOMModel xmlModel) { fXMLModel = xmlModel; setDocument(fXMLModel.getStructuredDocument()); }
public JSPTranslationExtension getTranslation() { if (fTranslation == null) { IDOMModel xmlModel = (IDOMModel) getModelManager().getExistingModelForRead(fDocument); ModelHandlerForJSP.ensureTranslationAdapterFactory(xmlModel); try { IDOMDocument xmlDoc = xmlModel.getDocument(); JSPTranslationAdapter translationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class); if (translationAdapter != null) fTranslation = translationAdapter.getJSPTranslation(); } finally { if (xmlModel != null) { xmlModel.releaseFromRead(); } } } return fTranslation; }
IDOMModel xmlModel = getModelForResource(file); try { IDOMDocument document = xmlModel.getDocument(); byteArray = xmlModel.getStructuredDocument().get().getBytes("UTF-8"); byteArray = xmlModel.getStructuredDocument().get().getBytes(); xmlModel.releaseFromRead();
IHTMLGraphicalViewer graphicViewer, int offset, int length) { IDOMModel model = graphicViewer.getModel(); IndexedRegion region1 = model.getIndexedRegion(offset); IndexedRegion region2 = model.getIndexedRegion(offset + length); IDOMNode node1 = (IDOMNode) region1; IDOMPosition endOfDoc = new DOMRefPosition2(model.getDocument(), true); DesignPosition p = DOMPositionHelper.toDesignPosition(endOfDoc);
NamedNodeMap attributes = newNode.getAttributes(); int attributesLength = attributes.getLength(); ISourceGenerator generator = node.getModel().getGenerator(); IStructuredDocument structuredDocument = structuredModel.getStructuredDocument(); replaceSource(structuredModel, structuredDocument, eachAttr.getNameRegionEndOffset(), 0, newAttrValue); newNode = (IDOMNode) structuredModel.getIndexedRegion(node.getStartOffset()); // save IStructuredDocument structuredDocument = structuredModel.getStructuredDocument(); replaceSource(structuredModel, structuredDocument, attrValueStartOffset, attrValueLength, newAttrValue); newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save
if (model == null) return; IDOMDocument document = model.getDocument(); if (document == null) return; model.aboutToChangeModel(); model.changedModel();
if(doc instanceof IDOMDocument) { IDOMDocument domDoc = (IDOMDocument) doc; IndexedRegion ir = domDoc.getModel().getIndexedRegion(offset); Node parent = ((Node) ir).getParentNode(); if(ir instanceof Text) {
file); if (xmlModel != null) { IDOMDocument doc = xmlModel.getDocument(); xmlModel.getFactoryRegistry().addFactory( new PageVariableAdapterFactory()); provider = new DocumentPageVariableAdapter(doc); .pushPageVarProvider(provider); Node child = xmlModel.getDocument().getFirstChild(); PreviewConvertContext context = new PreviewConvertContext(this .getDestDocument()); xmlModel.releaseFromRead();
void performValidation(IFile f, IReporter reporter, IStructuredModel model) { 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()) { translation.setProblemCollectingActive(true); translation.reconcileCompilationUnit(); List problems = translation.getProblems(); // add new messages for (int i = 0; i < problems.size() && !reporter.isCancelled(); i++) { IMessage m = createMessageFromProblem((IProblem) problems.get(i), f, translation, domModel.getStructuredDocument()); if (m != null) reporter.addMessage(fMessageOriginator, m); } } } }
IDOMDocument doc = ((IDOMModel) model).getDocument(); PropagatingAdapter adapter = (PropagatingAdapter) doc .getAdapterFor(PropagatingAdapter.class); ((IDOMModel) model).getFactoryRegistry().addFactory( CSSStyleAdapterFactory.getInstance()); ((IDOMModel) model).getFactoryRegistry().addFactory( new PageVariableAdapterFactory()); doc.addAdapter(new DocumentPageVariableAdapter(doc)); _viewer.setContents(((IDOMModel) model).getDocument()); } else { _viewer.setContents((EditPart) null);
/** * preExecute and postExecute is a pair. () SHOULD NOT throw any exception, * if it throw any exception, it should catch itself and return false to * indicate not continue. */ protected final boolean preExecute() { int position = 0; int length = 0; ISelection selection = _editor.getTextViewer().getSelection(); if (selection instanceof TextSelection) { position = ((TextSelection) selection).getOffset(); length = ((TextSelection) selection).getLength(); } getModel().beginRecording(this, getLabel(), position, length); getModel().aboutToChangeModel(); return true; }
int readCount = resource.getReadCount(); for (int i = 0; i < writeCount; i++) xmlModel.releaseFromEdit(); for (int ii = 0; ii < readCount; ii++) xmlModel.releaseFromRead();
/** * @param node * @return */ private String createClassname(IDOMNode node) { String classname = ""; //$NON-NLS-1$ if (node != null) { String base = node.getModel().getBaseLocation(); classname = JSP2ServletNameUtil.mangle(base); } return classname; }
public void releaseFromRead() { if (xmlModel != null) xmlModel.releaseFromRead(); }