当前位置: 首页>>代码示例>>Java>>正文


Java IDOMAttr类代码示例

本文整理汇总了Java中org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr的典型用法代码示例。如果您正苦于以下问题:Java IDOMAttr类的具体用法?Java IDOMAttr怎么用?Java IDOMAttr使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


IDOMAttr类属于org.eclipse.wst.xml.core.internal.provisional.document包,在下文中一共展示了IDOMAttr类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: completion

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
private List<CompletionItem> completion(String html, int offset) throws CoreException {
	IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("test");
	if (!project.exists()) {
		project.create(new NullProgressMonitor());
		project.open(new NullProgressMonitor());
	}
	IFile file = project.getFile("test.html");
	if (file.exists()) {
		file.setContents(IOUtils.toInputStream(html), 1, new NullProgressMonitor());
	} else {
		file.create(IOUtils.toInputStream(html), 1, new NullProgressMonitor());
	}

	IDOMModel model = DOMUtils.getModel(project, file);
	IDOMElement element = (IDOMElement) DOMUtils.getNodeByOffset(model, offset);
	IDOMAttr attr = DOMUtils.getAttrByOffset(element, offset);
	String attrName = attr.getName();

	CompletionCollector collector = new CompletionCollector(element, attr);
	AngularCorePlugin.getBindingManager().collect(element, attrName, file, collector);
	return collector.getList();
}
 
开发者ID:angelozerr,项目名称:angular-eclipse,代码行数:23,代码来源:HTMLAngularCompletionTest.java

示例2: getAttribute

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
/**
 * Returns the attribute from a content assist request from an attribute
 * completion.
 * 
 * @param request the content assist request, in the context of an attribute
 *          completion
 * @return the XML DOM attribute, or null
 */
public static IDOMAttr getAttribute(ContentAssistRequest request) {
  int valueRegionStartOffset = request.getStartOffset();

  NamedNodeMap attributes = request.getNode().getAttributes();
  
  if (attributes == null) {
    return null;
  }
  
  for (int i = 0; i < attributes.getLength(); i++) {
    IDOMAttr attribute = (IDOMAttr) attributes.item(i);
    if (attribute.getValueRegionStartOffset() == valueRegionStartOffset) {
      return attribute;
    }
  }

  return null;
}
 
开发者ID:gwt-plugins,项目名称:gwt-eclipse-plugin,代码行数:27,代码来源:XmlContentAssistUtilities.java

示例3: getAttributeValueRegion

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
/**
 * Gets a region for the attribute's value (without the quotes).
 */
public static IRegion getAttributeValueRegion(IDOMAttr attribute) {
  String attrValue = attribute.getValueRegionText();
  if (attrValue == null) {
    return null;
  }
  
  int offset = attribute.getValueRegionStartOffset();
  int length = attrValue.length();

  // Strip off the quotes
  if (isXmlQuote(attrValue.charAt(0))) {
    offset++;
    length--;
  }
  if (isXmlQuote(attrValue.charAt(attrValue.length() - 1))) {
    length--;
  }

  return new Region(offset, length);
}
 
开发者ID:gwt-plugins,项目名称:gwt-eclipse-plugin,代码行数:24,代码来源:XmlUtilities.java

示例4: newUrnImportProposalComputer

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
/**
 * Creates a proposal computer for autocompleting the UiBinder root element
 * URN import scheme. For example, <ui:UiBinder
 * xmlns:g="urn:import:com.google.gwt._" />
 */
public static IProposalComputer newUrnImportProposalComputer(
    ContentAssistRequest contentAssistRequest, IJavaProject javaProject) {
  IDOMAttr attribute = XmlContentAssistUtilities.getAttribute(contentAssistRequest);
  if (attribute == null) {
    return null;
  }

  String attrValue = XmlContentAssistUtilities.getAttributeValueUsingMatchString(contentAssistRequest);
  if (!UiBinderXmlModelUtilities.isUrnImportAttribute(attribute)) {
    return null;
  }

  int urnImportLength = UiBinderConstants.URN_IMPORT_NAMESPACE_BEGINNING.length();
  if (attrValue.length() < urnImportLength) {
    return null;
  }

  String replaceText = attrValue.substring(urnImportLength);
  int replaceOffset = XmlContentAssistUtilities.getAttributeValueOffset(contentAssistRequest)
      + urnImportLength;

  return new CodeCompleteProposalComputer(
      new int[]{CompletionProposal.PACKAGE_REF}, javaProject, replaceText,
      replaceOffset, replaceText.length(), null, false);
}
 
开发者ID:gwt-plugins,项目名称:gwt-eclipse-plugin,代码行数:31,代码来源:ProposalComputerFactory.java

示例5: markDuplicateFieldErrors

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
private void markDuplicateFieldErrors() {
  for (ElExpressionFirstFragment fragment : firstFragmentComputer.getDuplicateFirstFragments()) {
    IRegion region;
    IDOMAttr fieldAttribute = (IDOMAttr) UiBinderXmlModelUtilities.getFieldAttribute(fragment.getNode());
    if (fieldAttribute != null) {
      region = XmlUtilities.getAttributeValueRegion(fieldAttribute);
    } else {
      List<IRegion> tagRegions = XmlUtilities.getElementTagRegions(
          (IDOMElement) fragment.getNode(), true);
      region = tagRegions.size() > 0 ? tagRegions.get(0) : null;
    }

    if (region != null) {
      problemMarkerManager.setDuplicateFieldError(region, fragment.getValue());
    }
  }
}
 
开发者ID:gwt-plugins,项目名称:gwt-eclipse-plugin,代码行数:18,代码来源:UiBinderXmlParser.java

示例6: parseTypeAliasElements

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
private void parseTypeAliasElements(IDOMDocument domDoc, final TypeAliasMap aliasMap)
	throws XPathExpressionException
{
	NodeList nodes = XpathUtil.xpathNodes(domDoc, "//typeAliases/typeAlias");
	for (int i = 0; i < nodes.getLength(); i++)
	{
		String type = null;
		String alias = null;
		NamedNodeMap attrs = nodes.item(i).getAttributes();
		for (int j = 0; j < attrs.getLength(); j++)
		{
			IDOMAttr attr = (IDOMAttr)attrs.item(j);
			String attrName = attr.getName();
			if ("type".equals(attrName))
				type = attr.getValue();
			else if ("alias".equals(attrName))
				alias = attr.getValue();
		}
		aliasMap.put(alias, type);
	}
}
 
开发者ID:mybatis,项目名称:mybatipse,代码行数:22,代码来源:TypeAliasCache.java

示例7: validateResultMapId

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
private void validateResultMapId(IJavaProject project, IFile file, IDOMDocument doc,
	ValidationResult result, IDOMAttr attr, String attrValue, IReporter reporter)
	throws JavaModelException, XPathExpressionException
{
	if (attrValue.indexOf(',') == -1)
	{
		validateReference(project, file, doc, result, attr, attrValue, "resultMap", reporter);
	}
	else
	{
		String[] resultMapArr = attrValue.split(",");
		for (String resultMapRef : resultMapArr)
		{
			String ref = resultMapRef.trim();
			if (ref.length() > 0)
			{
				validateReference(project, file, doc, result, attr, ref, "resultMap", reporter);
			}
		}
	}
}
 
开发者ID:mybatis,项目名称:mybatipse,代码行数:22,代码来源:XmlValidator.java

示例8: validateStatementId

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
private void validateStatementId(IDOMElement element, IFile file, IDOMDocument doc,
	ValidationResult result, IJavaProject project, IDOMAttr attr, String attrValue)
	throws JavaModelException, XPathExpressionException
{
	if (attrValue == null)
	{
		return;
	}

	String qualifiedName = MybatipseXmlUtil.getNamespace(doc);
	IType mapperType = project.findType(qualifiedName);
	if (mapperType != null
		&& !JavaMapperCache.getInstance().methodExists(project, qualifiedName, attrValue))
	{
		addMarker(result, file, doc.getStructuredDocument(), attr, MISSING_STATEMENT_METHOD,
			IMarker.SEVERITY_WARNING, IMarker.PRIORITY_HIGH,
			"Method '" + attrValue + "' not found or there is an overload method"
				+ " (same name with different parameters) in mapper interface " + qualifiedName);
	}
}
 
开发者ID:mybatis,项目名称:mybatipse,代码行数:21,代码来源:XmlValidator.java

示例9: addMarker

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
private void addMarker(ValidationResult result, IFile file, IStructuredDocument doc,
	IDOMAttr attr, String problemType, int severity, int priority, String message)
{
	int start = attr.getValueRegionStartOffset();
	int length = attr.getValueRegionText().length();
	int lineNo = doc.getLineOfOffset(start);
	ValidatorMessage marker = ValidatorMessage.create(message, file);
	marker.setType(MARKER_ID);
	marker.setAttribute(IMarker.SEVERITY, severity);
	marker.setAttribute(IMarker.PRIORITY, priority);
	marker.setAttribute(IMarker.MESSAGE, message);
	marker.setAttribute(IMarker.LINE_NUMBER, lineNo);
	if (start != 0)
	{
		marker.setAttribute(IMarker.CHAR_START, start);
		marker.setAttribute(IMarker.CHAR_END, start + length);
	}
	// Adds custom attributes.
	marker.setAttribute("problemType", problemType);
	marker.setAttribute("errorValue", attr.getValue());
	result.add(marker);
}
 
开发者ID:mybatis,项目名称:mybatipse,代码行数:23,代码来源:XmlValidator.java

示例10: renameResultMapId

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
protected void renameResultMapId(IDocument document, final IDOMAttr attr, int offset)
{
	String id = attr.getValue();
	if (id.indexOf(',') > -1)
	{
		// multiple result maps. get the one that has the cursor.
		String valueRegionText = attr.getValueRegionText();
		int selectionOffset = offset - attr.getValueRegionStartOffset();
		int valueOffset = valueRegionText.indexOf(id);
		int start = valueRegionText.lastIndexOf(',', selectionOffset - 1);
		start = start == -1 ? valueOffset : start + 1;
		int end = valueRegionText.indexOf(',', selectionOffset);
		end = end == -1 ? valueOffset + id.length() : end;
		id = valueRegionText.substring(start, end).trim();
	}
	ElementRenameInfo refactoringInfo = createRefactoringInfo(document, attr, id);
	ElementRenameRefactoring refactoring = new ElementRenameRefactoring(
		new ResultMapRenameEditCollector(refactoringInfo));
	runRefactoringWizard(refactoringInfo, refactoring);
}
 
开发者ID:mybatis,项目名称:mybatipse,代码行数:21,代码来源:XmlElementRenameHandler.java

示例11: renameStatementId

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
protected void renameStatementId(IDocument document, final IDOMAttr attr)
{
	String id = attr.getValue();
	ElementRenameInfo refactoringInfo = createRefactoringInfo(document, attr, id);
	IMethod method = findMapperMethod(refactoringInfo);
	if (method == null)
	{
		ElementRenameRefactoring refactoring = new ElementRenameRefactoring(
			new StatementRenameEditCollector(refactoringInfo, false));
		runRefactoringWizard(refactoringInfo, refactoring);
	}
	else
	{
		invokeJdtRename(method);
	}
}
 
开发者ID:mybatis,项目名称:mybatipse,代码行数:17,代码来源:XmlElementRenameHandler.java

示例12: createRefactoringInfo

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
protected ElementRenameInfo createRefactoringInfo(IDocument document, final IDOMAttr attr,
	String id)
{
	String namespace;
	String oldId;
	int namespaceEnd = id.lastIndexOf('.');
	if (namespaceEnd > -1)
	{
		oldId = id.substring(namespaceEnd + 1);
		namespace = id.substring(0, namespaceEnd);
	}
	else
	{
		oldId = id;
		namespace = MybatipseXmlUtil.getNamespace(attr.getOwnerDocument());
	}
	ElementRenameInfo refactoringInfo = new ElementRenameInfo();
	refactoringInfo.setOldId(oldId);
	refactoringInfo.setNamespace(namespace);
	refactoringInfo.setProject(MybatipseXmlUtil.getJavaProject(document));
	return refactoringInfo;
}
 
开发者ID:mybatis,项目名称:mybatipse,代码行数:23,代码来源:XmlElementRenameHandler.java

示例13: validateImage

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
/**
 * Validate img/@src
 * 
 * @param documentRegion
 * @param reporter
 * @param model
 * @param file
 * @param factory
 * @param attrValueRegion
 * @param resourceType
 */
private void validateImage(IStructuredDocumentRegion documentRegion,
		IReporter reporter, IStructuredModel model, IFile file,
		MessageFactory factory, WebResourcesTextRegion attrValueRegion,
		WebResourcesFinderType resourceType) {
	IDOMAttr attr = DOMHelper.getAttrByOffset(model,
			documentRegion.getStartOffset()
					+ attrValueRegion.getRegion().getStart());
	if (attr != null) {
		String attrValue = DOMHelper.getAttrValue(documentRegion
				.getText(attrValueRegion.getRegion()));
		if (URIHelper.isDataURIScheme(attrValue)) {
			// see https://en.wikipedia.org/wiki/Data_URI_scheme
			// ex : <img
			// src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="
			// alt="Red dot" />
			// TODO : validate format of data uri scheme.
		} else {
			// ex : <img src="path/to/image.png" />
			validateFile(documentRegion, reporter, model, file, factory,
					attrValueRegion, resourceType);
		}
	}
}
 
开发者ID:angelozerr,项目名称:eclipse-wtp-webresources,代码行数:35,代码来源:WebResourcesValidator.java

示例14: validateAttributeValue

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
private ValidationMessage validateAttributeValue(IDOMElement target, String attrName) {
	AngularType type = directive.getDirectiveType();
	switch (type) {
	case module:
	case controller:
		try {
			IFile file = getFile();
			IDocument document = getDocument();
			IIDETernProject ternProject = AngularProject.getTernProject(file.getProject());
			IDOMAttr attr = (IDOMAttr) target.getAttributeNode(attrName);
			boolean exists = isAngularElementExists(attr, file, document, ternProject, type);
			if (!exists) {
				Segment segment = CustomValidatorUtil.getAttributeSegment(
						(IDOMNode) target.getAttributeNode(attrName), CustomValidatorUtil.ATTR_REGION_VALUE);
				return new ValidationMessage(
						NLS.bind(AngularCoreMessages.Validation_AngularElementNotFound, type.name(),
								attr.getValue()),
						segment.getOffset(), segment.getLength(), ValidationMessage.ERROR);
			}
		} catch (Exception e) {
			Trace.trace(Trace.SEVERE, "Error while Angular validator.", e);
		}
		break;
	}
	return null;
}
 
开发者ID:angelozerr,项目名称:angularjs-eclipse,代码行数:27,代码来源:HTMLAngularAttributeValidator.java

示例15: isAngularElementExists

import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr; //导入依赖的package包/类
private static boolean isAngularElementExists(IDOMAttr attr, IFile file, IDocument document,
		IIDETernProject ternProject, final AngularType angularType) throws CoreException, IOException, Exception {

	TernAngularQuery query = new TernAngularTypeQuery(angularType);
	query.setExpression(AngularScopeHelper.getAngularValue(attr, angularType));

	ITernScriptPath scriptPath = AngularScopeHelper.populateScope(attr.getOwnerElement(), file, angularType, query);

	ValidationTernTypeCollector collector = new ValidationTernTypeCollector();

	if (scriptPath != null) {
		ternProject.request(query, null, scriptPath, null, null, collector);
	} else {
		ITernFile tf = new TernDocumentFile(file, document);
		ternProject.request(query, null, null, attr, tf, collector);
	}
	return collector.isExists();
}
 
开发者ID:angelozerr,项目名称:angularjs-eclipse,代码行数:19,代码来源:HTMLAngularAttributeValidator.java


注:本文中的org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。