public MethodByMethodJoinPointGenerator getJoinPointGenerator(MethodByMethodInfo info) { //We are an instance advisor, get the generator from the class advisor return parent.getJoinPointGenerator(info); }
public FieldJoinPointGenerator getJoinPointGenerator(FieldInfo info) { //We are an instance advisor, get the generator from the class advisor return parent.getJoinPointGenerator(info); }
public MethodJoinPointGenerator getJoinPointGenerator(MethodInfo info) { //We are an instance advisor, get the generator from the class advisor return parent.getJoinPointGenerator(info); }
public ConstructorJoinPointGenerator getJoinPointGenerator(ConstructorInfo info) { //We are an instance advisor, get the generator from the class advisor return parent.getJoinPointGenerator(info); }
public ConstructionJoinPointGenerator getJoinPointGenerator(ConstructionInfo info) { //We are an instance advisor, get the generator from the class advisor return parent.getJoinPointGenerator(info); }
public ConByMethodJoinPointGenerator getJoinPointGenerator(ConByMethodInfo info) { //We are an instance advisor, get the generator from the class advisor return parent.getJoinPointGenerator(info); }
@Override protected void finalizeConCalledByMethodInterceptorChain(ConByMethodInfo info) { ConByMethodJoinPointGenerator generator = getJoinPointGenerator(info); finalizeChainAndRebindJoinPoint(oldInfos, info, generator, OldInfoMaps.INFOS); }
private void fullWorkFinalizeFieldChain(Map<Joinpoint, Interceptor[]> oldFieldInfos, FieldInfo[] newFieldInfos, OldInfoMaps oldInfoMapInstance) { //We are either the class advisor or an instanceadvisor with own data so we need to do all the work for (int i = 0; i < newFieldInfos.length; i++) { FieldInfo info = newFieldInfos[i]; FieldJoinPointGenerator generator = getJoinPointGenerator(info); finalizeChainAndRebindJoinPoint(oldFieldInfos, info, generator, oldInfoMapInstance); } }
@Override protected void finalizeMethodCalledByMethodInterceptorChain(MethodByMethodInfo info) { MethodByMethodJoinPointGenerator generator = getJoinPointGenerator(info); finalizeChainAndRebindJoinPoint(oldInfos, info, generator, OldInfoMaps.INFOS); }
@Override protected void finalizeConCalledByConInterceptorChain(ConByConInfo info) { ConByConJoinPointGenerator generator = getJoinPointGenerator(info); finalizeChainAndRebindJoinPoint(oldInfos, info, generator, OldInfoMaps.INFOS); }
@Override protected void finalizeMethodCalledByConInterceptorChain(MethodByConInfo info) { MethodByConJoinPointGenerator generator = getJoinPointGenerator(info); finalizeChainAndRebindJoinPoint(oldInfos, info, generator, OldInfoMaps.INFOS); }
protected void generateJoinPointClass(MethodByMethodInfo info) { MethodByMethodJoinPointGenerator generator = getJoinPointGenerator(info); generator.generateJoinPointClass(getClassLoader(), info); }
protected void generateJoinPointClass(ConByConInfo info) { ConByConJoinPointGenerator generator = getJoinPointGenerator(info); generator.generateJoinPointClass(getClassLoader(), info); }
protected void generateJoinPointClass(ConstructionInfo info) { ConstructionJoinPointGenerator generator = getJoinPointGenerator(info); generator.generateJoinPointClass(getClassLoader(), info); }
protected void generateJoinPointClass(ConstructorInfo info) { ConstructorJoinPointGenerator generator = getJoinPointGenerator(info); generator.generateJoinPointClass(getClassLoader(), info); }
protected void generateJoinPointClass(ConByMethodInfo info) { ConByMethodJoinPointGenerator generator = getJoinPointGenerator(info); generator.generateJoinPointClass(getClassLoader(), info); }
protected void generateJoinPointClass(FieldInfo info) { FieldJoinPointGenerator generator = getJoinPointGenerator(info); generator.generateJoinPointClass(getClassLoader(), info); }
protected void generateJoinPointClass(MethodByConInfo info) { MethodByConJoinPointGenerator generator = getJoinPointGenerator(info); generator.generateJoinPointClass(getClassLoader(), info); }
protected Object rebindJoinPointWithInstanceInformation(JoinPointInfo info) { info.getInterceptorChainReadWriteLock().readLock().lock(); try { JoinPointGenerator generator = getJoinPointGenerator(info); generator.rebindJoinpoint(info); return generator.generateJoinPointClass(getClassLoader(), info); } finally { info.getInterceptorChainReadWriteLock().readLock().unlock(); } }
private void easyFinalizeFieldChainForInstance(Map<Joinpoint, Interceptor[]> oldFieldInfos, FieldInfo[] classFieldInfos, FieldInfo[] newFieldInfos, OldInfoMaps oldInfoMapInstance) { //We are an instance advisor with no own data influencing the chains, copy these from the parent advisor for (int i = 0; i < newFieldInfos.length; i++) { FieldInfo myInfo = newFieldInfos[i]; myInfo.cloneChains(classFieldInfos[i]); if (updateOldInfo(oldFieldInfos, myInfo, oldInfoMapInstance)) { FieldJoinPointGenerator generator = getJoinPointGenerator(myInfo); generator.rebindJoinpoint(myInfo); } } }