withNamespace() pattern

This commit is contained in:
Dmitry Avdeev
2014-10-08 13:55:47 +04:00
parent 307e05665f
commit 313cd02dd5
@@ -42,17 +42,16 @@ public class XmlAttributeValuePattern extends XmlElementPattern<XmlAttributeValu
}
public XmlAttributeValuePattern withLocalName(@NonNls String... names) {
if (names.length == 1) {
return withLocalName(StandardPatterns.string().equalTo(names[0]));
}
return withLocalName(StandardPatterns.string().oneOf(names));
return names.length == 1
? withLocalName(StandardPatterns.string().equalTo(names[0]))
: withLocalName(StandardPatterns.string().oneOf(names));
}
public XmlAttributeValuePattern withLocalNameIgnoreCase(@NonNls String... names) {
return withLocalName(StandardPatterns.string().oneOfIgnoreCase(names));
}
public XmlAttributeValuePattern withLocalName(ElementPattern<String> namePattern) {
return with(new PsiNamePatternCondition<XmlAttributeValue>("withLocalName", namePattern) {
@Override
@@ -76,6 +75,28 @@ public class XmlAttributeValuePattern extends XmlElementPattern<XmlAttributeValu
});
}
public XmlAttributeValuePattern withNamespace(@NonNls String... names) {
return names.length == 1
? withNamespace(StandardPatterns.string().equalTo(names[0]))
: withNamespace(StandardPatterns.string().oneOf(names));
}
public XmlAttributeValuePattern withNamespace(ElementPattern<String> namePattern) {
return with(new PsiNamePatternCondition<XmlAttributeValue>("withNamespace", namePattern) {
@Override
public String getPropertyValue(@NotNull final Object o) {
if (o instanceof XmlAttributeValue) {
final PsiElement parent = ((XmlAttributeValue)o).getParent();
if (parent instanceof XmlAttribute) {
return ((XmlAttribute)parent).getNamespace();
}
}
return null;
}
});
}
public XmlAttributeValuePattern withValue(final StringPattern valuePattern) {
return with(new PatternCondition<XmlAttributeValue>("withValue") {
@Override