X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=security%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsecurity%2Fauthorization%2FRegexpPathCondition.java;fp=security%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsecurity%2Fauthorization%2FRegexpPathCondition.java;h=b2b022a3ab93d2f74714fdb20853747ace7c96a6;hb=5ea8f0e2af53562c1507e8fb5a3ede2af5c5de6c;hp=0000000000000000000000000000000000000000;hpb=b9eccdf9751b8e2e671e0792f885d05c6ed0f43c;p=utils diff --git a/security/impl/src/main/java/org/wamblee/security/authorization/RegexpPathCondition.java b/security/impl/src/main/java/org/wamblee/security/authorization/RegexpPathCondition.java new file mode 100644 index 00000000..b2b022a3 --- /dev/null +++ b/security/impl/src/main/java/org/wamblee/security/authorization/RegexpPathCondition.java @@ -0,0 +1,87 @@ +/* + * Copyright 2005-2010 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.wamblee.security.authorization; + +import org.wamblee.persistence.AbstractPersistent; + +/** + * Condition to check whether a path matches a given regula expression. + * + * @author Erik Brakkee + */ +public class RegexpPathCondition extends AbstractPersistent implements + PathCondition { + /** + * String the path must start with. + */ + private String pattern; + + /** + * Constructs the condition. + * + * @param aPattern + * String the path must start with. + */ + public RegexpPathCondition(String aPattern) { + pattern = aPattern; + } + + /** + * For OR mapping. + * + */ + protected RegexpPathCondition() { + pattern = null; + } + + /* + * (non-Javadoc) + * + * @see + * org.wamblee.security.authorization.PathCondition#matches(java.lang.String + * ) + */ + public boolean matches(String aPath) { + return aPath.matches(pattern); + } + + /** + * + * @return Returns the _path. + */ + protected String getPattern() { + return pattern; + } + + /** + * + * @param aPattern + * The _path to set. + */ + protected void setPattern(String aPattern) { + pattern = aPattern; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "RegexpCondition(pattern = '" + pattern + "')"; + } +}