⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mockattributes.java

📁 acegi构造安全的java系统
💻 JAVA
字号:
/* Copyright 2004, 2005, 2006 Acegi Technology Pty Limited * * 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.acegisecurity.intercept.method;import org.acegisecurity.ITargetObject;import org.acegisecurity.OtherTargetObject;import org.acegisecurity.SecurityConfig;import org.acegisecurity.TargetObject;import org.springframework.metadata.Attributes;import java.lang.reflect.Field;import java.lang.reflect.Method;import java.util.Arrays;import java.util.Collection;import java.util.List;/** * Used by the {@link MethodDefinitionAttributesTests}. * * @author Cameron Braid * @author Ben Alex */public class MockAttributes implements Attributes {    //~ Instance fields ================================================================================================    List classAttributes = Arrays.asList(new SecurityConfig[] {new SecurityConfig("MOCK_CLASS")});    List classMethodAttributesCountLength = Arrays.asList(new String[] {new String("MOCK_CLASS_METHOD_COUNT_LENGTH")});    List classMethodAttributesMakeLowerCase = Arrays.asList(new SecurityConfig[] {                new SecurityConfig("MOCK_CLASS_METHOD_MAKE_LOWER_CASE")            });    List classMethodAttributesMakeUpperCase = Arrays.asList(new SecurityConfig[] {                new SecurityConfig("MOCK_CLASS_METHOD_MAKE_UPPER_CASE")            });    List interfaceAttributes = Arrays.asList(new SecurityConfig[] {new SecurityConfig("MOCK_INTERFACE")});    List interfaceMethodAttributesCountLength = Arrays.asList(new SecurityConfig[] {                new SecurityConfig("MOCK_INTERFACE_METHOD_COUNT_LENGTH")            });    List interfaceMethodAttributesMakeLowerCase = Arrays.asList(new SecurityConfig[] {                new SecurityConfig("MOCK_INTERFACE_METHOD_MAKE_LOWER_CASE")            });    List interfaceMethodAttributesMakeUpperCase = Arrays.asList(new SecurityConfig[] {                new SecurityConfig("MOCK_INTERFACE_METHOD_MAKE_UPPER_CASE"), new SecurityConfig("RUN_AS")            });    //~ Methods ========================================================================================================    public Collection getAttributes(Class clazz) {        // Emphasise we return null for OtherTargetObject        if (clazz.equals(OtherTargetObject.class)) {            return null;        }        // interface        if (clazz.equals(ITargetObject.class)) {            return interfaceAttributes;        }        // class        if (clazz.equals(TargetObject.class)) {            return classAttributes;        }        return null;    }    public Collection getAttributes(Method method) {        // interface        if (method.getDeclaringClass().equals(ITargetObject.class)) {            if (method.getName().equals("countLength")) {                return interfaceMethodAttributesCountLength;            }            if (method.getName().equals("makeLowerCase")) {                return interfaceMethodAttributesMakeLowerCase;            }            if (method.getName().equals("makeUpperCase")) {                return interfaceMethodAttributesMakeUpperCase;            }            if (method.getName().equals("publicMakeLowerCase")) {                throw new UnsupportedOperationException("mock support not implemented");            }        }        // class        if (method.getDeclaringClass().equals(TargetObject.class)) {            if (method.getName().equals("countLength")) {                return classMethodAttributesCountLength;            }            if (method.getName().equals("makeLowerCase")) {                return classMethodAttributesMakeLowerCase;            }            if (method.getName().equals("makeUpperCase")) {                return classMethodAttributesMakeUpperCase;            }            if (method.getName().equals("publicMakeLowerCase")) {                throw new UnsupportedOperationException("mock support not implemented");            }        }        // other target object        if (method.getDeclaringClass().equals(OtherTargetObject.class)) {            if (method.getName().equals("countLength")) {                return classMethodAttributesCountLength;            }            if (method.getName().equals("makeLowerCase")) {                return classMethodAttributesMakeLowerCase;            }            if (method.getName().equals("makeUpperCase")) {                return null; // NB            }            if (method.getName().equals("publicMakeLowerCase")) {                throw new UnsupportedOperationException("mock support not implemented");            }        }        return null;    }    public Collection getAttributes(Class arg0, Class arg1) {        throw new UnsupportedOperationException("mock method not implemented");    }    public Collection getAttributes(Field arg0, Class arg1) {        throw new UnsupportedOperationException("mock method not implemented");    }    public Collection getAttributes(Field arg0) {        throw new UnsupportedOperationException("mock method not implemented");    }    public Collection getAttributes(Method arg0, Class arg1) {        throw new UnsupportedOperationException("mock method not implemented");    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -