62,628
社区成员
发帖
与我相关
我的任务
分享
public boolean implies(Permission other) {
// TODO Auto-generated method stub
if(!(other instanceof WordCheckPermission))
return false;
WordCheckPermission b = (WordCheckPermission) other;
if(action.equals("insert"))
{
return b.action.equals("insert")&&getName().indexOf(b.getName())>=0;
}
else if(action.equals("avoid"))
{
if(b.action.equals("avoid"))
return b.badWordSet().containsAll(badWordSet());
else if(b.action.equals("insert"));
{
for(String badWord:badWordSet())
if(b.getName().indexOf(badWord)>=0)
return false;
return true;
}
}
else return false;
}
public boolean equals(Object other) {
// TODO Auto-generated method stub
if(other == null)
return false;
if(!getClass().equals(other.getClass()))
return false;
WordCheckPermission b = (WordCheckPermission) other;
if(!Objects.equals(action, b.action))
return false;
if("insert".equals(action))
return Objects.equals(getName(), b.getName());
else if("avoid".equals(action))
return badWordSet().equals(b.badWordSet());
else
return false;
}
public int hashCode() {
// TODO Auto-generated method stub
return Objects.hash(getName(),action);
}
public Set<String> badWordSet()
{
Set<String> set = new HashSet<>();
set.addAll(Arrays.asList(getName().split(",")));
return set;
}