Package net.sf.cglib.core

Examples of net.sf.cglib.core.Signature


    private Map<Method, FastMethod> getMethodMappings(Class<?> intfs) {
        // ����interface�еķ����ͱ�������֮��Ķ�Ӧ��ϵ
        Map<Method, FastMethod> methodMappings = createHashMap();

        for (Method method : intfs.getMethods()) {
            Signature sig = getSignature(method, null);
            Method realMethod = assertNotNull(methods.get(sig), "unknown method signature: %s", sig);
            FastClass fc = FastClass.create(getClassLoader(), realMethod.getDeclaringClass());
            FastMethod fm = fc.getMethod(realMethod);

            methodMappings.put(method, fm);
View Full Code Here


        Map<String, List<Method>> overriderMethods = getMethodMap(overrider.getClass());
        FastClass overriderFastClass = FastClass.create(getClassLoader(), overrider.getClass());

        for (Class<?> interfaceClass : interfaces) {
            for (Method interfaceMethod : interfaceClass.getMethods()) {
                Signature sig = getSignature(interfaceMethod, null);
                Method overriderMethod = getCompatibleOverrideMethod(overriderMethods, interfaceMethod);

                if (overriderMethod != null) {
                    log.trace("Overrided method: {}", getSimpleMethodSignature(interfaceMethod, true));
                    overridedMethods.put(sig, overriderFastClass.getMethod(overriderMethod));
View Full Code Here

            Object valueToSet = args[0];
            if (valueToSet == null) {
                // FIXME support direct field accessors better here
                PersistentMethod persistentMethod = (PersistentMethod)(PersistentMethod)em.getFactory().getAnnotationManager().getAnnotationInfo(obj).getPersistentProperty(attributeName);
                Method getter = persistentMethod.getGetter();
                MethodProxy getterProxy = MethodProxy.find(obj.getClass(), new Signature(persistentMethod.getGetter().getName(), Type.getType(getter.getReturnType()), new Type[]{}));
                Object ret = getterProxy.invokeSuper(obj, null);
                if (ret != null) {
                    nulledFields.put(attributeName, ret);
                    logger.fine("field " + attributeName + " is being nulled. Old value = " + ret);
                }
View Full Code Here

        Map<String, List<Method>> overriderMethods = getMethodMap(overriderClass);
        FastClass overriderFastClass = FastClass.create(getClassLoader(), overriderClass);

        for (Class<?> interfaceClass : interfaces) {
            for (Method interfaceMethod : interfaceClass.getMethods()) {
                Signature sig = getSignature(interfaceMethod, null);
                Method overriderMethod = getCompatibleOverrideMethod(overriderMethods, interfaceMethod);

                if (overriderMethod != null) {
                    log.trace("Overrided method: {}", getSimpleMethodSignature(interfaceMethod, true));
                    overridedMethods.put(sig, overriderFastClass.getMethod(overriderMethod));
View Full Code Here

        }
        return null;
    }

    private static int getSuperIndex(Class proxyType, Method method) {
        Signature signature = new Signature(method.getName(), Type.getReturnType(method), Type.getArgumentTypes(method));
        MethodProxy methodProxy = MethodProxy.find(proxyType, signature);
        if (methodProxy != null) {
            return methodProxy.getSuperIndex();
        }
        return -1;
View Full Code Here

/* 170 */         invoke_virtual(owner, sig);
/*     */       } } ;
/*     */   }
/*     */
/*     */   private static Signature readMethodSig(String name, String desc) {
/* 176 */     return new Signature("$cglib_read_" + name, "()" + desc);
/*     */   }
View Full Code Here

/*     */   private static Signature readMethodSig(String name, String desc) {
/* 176 */     return new Signature("$cglib_read_" + name, "()" + desc);
/*     */   }
/*     */
/*     */   private static Signature writeMethodSig(String name, String desc) {
/* 180 */     return new Signature("$cglib_write_" + name, "(" + desc + ")V");
/*     */   }
View Full Code Here

/* 180 */     return new Signature("$cglib_write_" + name, "(" + desc + ")V");
/*     */   }
/*     */
/*     */   private static Signature readCallbackSig(Type type) {
/* 184 */     Type remap = remap(type);
/* 185 */     return new Signature("read" + callbackName(remap), remap, new Type[] { Constants.TYPE_OBJECT, Constants.TYPE_STRING, remap });
/*     */   }
View Full Code Here

/*     */   }
/*     */
/*     */   private static Signature writeCallbackSig(Type type)
/*     */   {
/* 193 */     Type remap = remap(type);
/* 194 */     return new Signature("write" + callbackName(remap), remap, new Type[] { Constants.TYPE_OBJECT, Constants.TYPE_STRING, remap, remap });
/*     */   }
View Full Code Here

/*     */     }
/*     */     catch (NoSuchMethodException e) {
/* 104 */       throw new CodeGenerationException(e);
/*     */     }
/*     */     Method delegate;
/* 107 */     Signature sig = ReflectUtils.getSignature(m);
/* 108 */     Type[] exceptions = TypeUtils.getTypes(m.getExceptionTypes());
/* 109 */     CodeEmitter e = super.begin_method(1, sig, exceptions, null);
/* 110 */     e.load_this();
/* 111 */     e.getfield("$CGLIB_DELEGATE");
/* 112 */     e.load_args();
View Full Code Here

TOP

Related Classes of net.sf.cglib.core.Signature

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.