*/
package org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.type;
+import static java.util.Objects.requireNonNull;
+
import com.google.common.base.MoreObjects;
-import com.google.common.base.Optional;
-import com.google.common.base.Preconditions;
import java.util.Objects;
+import java.util.Optional;
import org.opendaylight.yangtools.yang.model.api.type.ModifierKind;
import org.opendaylight.yangtools.yang.model.api.type.PatternConstraint;
public class PatternConstraintEffectiveImpl implements PatternConstraint {
private final String regEx;
+ private final String rawRegEx;
private final String description;
private final String reference;
private final String errorAppTag;
private final String errorMessage;
private final ModifierKind modifier;
- public PatternConstraintEffectiveImpl(final String regex, final Optional<String> description,
- final Optional<String> reference) {
- this(regex, description.orNull(), reference.orNull(), null, null, null);
+ public PatternConstraintEffectiveImpl(final String regex, final String rawRegex,
+ final Optional<String> description, final Optional<String> reference) {
+ this(regex, rawRegex, description.orElse(null), reference.orElse(null), null, null, null);
}
- public PatternConstraintEffectiveImpl(final String regex, final String description, final String reference,
- final String errorAppTag, final String errorMessage, final ModifierKind modifier) {
- super();
- this.regEx = Preconditions.checkNotNull(regex, "regex must not be null.");
+ public PatternConstraintEffectiveImpl(final String regex, final String rawRegex, final String description,
+ final String reference, final String errorAppTag, final String errorMessage, final ModifierKind modifier) {
+ this.regEx = requireNonNull(regex, "regex must not be null");
+ this.rawRegEx = requireNonNull(rawRegex, "raw regex must not be null");
this.description = description;
this.reference = reference;
this.errorAppTag = errorAppTag != null ? errorAppTag : "invalid-regular-expression";
}
@Override
- public String getDescription() {
- return description;
+ public String getRawRegularExpression() {
+ return rawRegEx;
+ }
+
+ @Override
+ public Optional<String> getDescription() {
+ return Optional.ofNullable(description);
}
@Override
- public String getErrorAppTag() {
- return errorAppTag;
+ public Optional<String> getErrorAppTag() {
+ return Optional.ofNullable(errorAppTag);
}
@Override
- public String getErrorMessage() {
- return errorMessage;
+ public Optional<String> getErrorMessage() {
+ return Optional.ofNullable(errorMessage);
}
@Override
}
@Override
- public String getReference() {
- return reference;
+ public Optional<String> getReference() {
+ return Optional.ofNullable(reference);
}
@Override