Introduce a static Pattern, which can be used to instantiate Matchers.
Speeds up processing, which included construction of the pattern on each
call.
Change-Id: I4f6cde4cc738aada05c4c6f113271cf002fae19d
Signed-off-by: Robert Varga <rovarga@cisco.com>
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
import org.opendaylight.yangtools.binding.generator.util.generated.type.builder.GeneratedTOBuilderImpl;
import org.opendaylight.yangtools.sal.binding.model.api.AccessModifier;
import org.opendaylight.yangtools.binding.generator.util.generated.type.builder.GeneratedTOBuilderImpl;
import org.opendaylight.yangtools.sal.binding.model.api.AccessModifier;
- public void set(SimpleDateFormat value) {
+ public void set(final SimpleDateFormat value) {
throw new UnsupportedOperationException();
}
};
throw new UnsupportedOperationException();
}
};
@Deprecated
private static final Set<String> JAVA_RESERVED_WORDS = new HashSet<String>(Arrays.asList(SET_VALUES));
@Deprecated
private static final Set<String> JAVA_RESERVED_WORDS = new HashSet<String>(Arrays.asList(SET_VALUES));
+ /**
+ * Pre-compiled replacement pattern.
+ */
+ private static final Pattern COLON_SLASH_SLASH = Pattern.compile("://", Pattern.LITERAL);
+ private static final String QUOTED_DOT = Matcher.quoteReplacement(".");
+
/**
* Converts string <code>packageName</code> to valid JAVA package name.
*
/**
* Converts string <code>packageName</code> to valid JAVA package name.
*
}
packageNameBuilder.append("org.opendaylight.yang.gen.v");
packageNameBuilder.append(module.getYangVersion());
}
packageNameBuilder.append("org.opendaylight.yang.gen.v");
packageNameBuilder.append(module.getYangVersion());
- packageNameBuilder.append(".");
+ packageNameBuilder.append('.');
String namespace = module.getNamespace().toString();
String namespace = module.getNamespace().toString();
- namespace = namespace.replace("://", ".");
+ namespace = COLON_SLASH_SLASH.matcher(namespace).replaceAll(QUOTED_DOT);
+
+ // FIXME: improve these
namespace = namespace.replace("/", ".");
namespace = namespace.replace(":", ".");
namespace = namespace.replace("-", ".");
namespace = namespace.replace("/", ".");
namespace = namespace.replace(":", ".");
namespace = namespace.replace("-", ".");
* @return string with valid JAVA package name
*/
public static String packageNameForGeneratedType(final String basePackageName, final SchemaPath schemaPath,
* @return string with valid JAVA package name
*/
public static String packageNameForGeneratedType(final String basePackageName, final SchemaPath schemaPath,
- boolean isUsesAugment) {
+ final boolean isUsesAugment) {
if (basePackageName == null) {
throw new IllegalArgumentException("Base Package Name cannot be NULL!");
}
if (basePackageName == null) {
throw new IllegalArgumentException("Base Package Name cannot be NULL!");
}
* @deprecated Use {@link BindingMapping#getClassName(QName)} instead.
*/
@Deprecated
* @deprecated Use {@link BindingMapping#getClassName(QName)} instead.
*/
@Deprecated
- public static String parseToClassName(String token) {
+ public static String parseToClassName(final String token) {
return parseToCamelCase(token, true);
}
return parseToCamelCase(token, true);
}
* @throws IllegalArgumentException
* if the length of the returning string has length 0
*/
* @throws IllegalArgumentException
* if the length of the returning string has length 0
*/
- private static String replaceWithCamelCase(String text, char removalChar) {
+ private static String replaceWithCamelCase(final String text, final char removalChar) {
StringBuilder sb = new StringBuilder(text);
String toBeRemoved = String.valueOf(removalChar);
StringBuilder sb = new StringBuilder(text);
String toBeRemoved = String.valueOf(removalChar);
- public static long computeDefaultSUID(GeneratedTOBuilderImpl to) {
+ public static long computeDefaultSUID(final GeneratedTOBuilderImpl to) {
try {
ByteArrayOutputStream bout = new ByteArrayOutputStream();
DataOutputStream dout = new DataOutputStream(bout);
try {
ByteArrayOutputStream bout = new ByteArrayOutputStream();
DataOutputStream dout = new DataOutputStream(bout);
List<Type> impl = to.getImplementsTypes();
Collections.sort(impl, new Comparator<Type>() {
@Override
List<Type> impl = to.getImplementsTypes();
Collections.sort(impl, new Comparator<Type>() {
@Override
- public int compare(Type o1, Type o2) {
+ public int compare(final Type o1, final Type o2) {
return o1.getFullyQualifiedName().compareTo(o2.getFullyQualifiedName());
}
});
return o1.getFullyQualifiedName().compareTo(o2.getFullyQualifiedName());
}
});
Comparator<TypeMemberBuilder<?>> comparator = new Comparator<TypeMemberBuilder<?>>() {
@Override
Comparator<TypeMemberBuilder<?>> comparator = new Comparator<TypeMemberBuilder<?>>() {
@Override
- public int compare(TypeMemberBuilder<?> o1, TypeMemberBuilder<?> o2) {
+ public int compare(final TypeMemberBuilder<?> o1, final TypeMemberBuilder<?> o2) {
return o1.getName().compareTo(o2.getName());
}
};
return o1.getName().compareTo(o2.getName());
}
};
- public static Restrictions getRestrictions(TypeDefinition<?> type) {
+ public static Restrictions getRestrictions(final TypeDefinition<?> type) {
final List<LengthConstraint> length = new ArrayList<>();
final List<PatternConstraint> pattern = new ArrayList<>();
final List<RangeConstraint> range = new ArrayList<>();
final List<LengthConstraint> length = new ArrayList<>();
final List<PatternConstraint> pattern = new ArrayList<>();
final List<RangeConstraint> range = new ArrayList<>();