public boolean isMatch(Resource resource) {
        if (this.resourceType == ResourceType.ANY) {
            return true;
        }
        if (this.resourceType != resource.resourceType) {
            return false;
        }
        switch (resourcePattern) {
            case ANY:
                return true;
            case LITERAL:
                return StringUtils.equals(resource.resourceName, this.resourceName);
            case PREFIXED:
                return StringUtils.startsWith(resource.resourceName, this.resourceName);
            default:
                return false;
        }
    }
@Test
    public void isMatch() {

    }