ArrayList accessMethods = new ArrayList();
List accessMethods = new ArrayList();
		private void buildModel(IType type) throws JavaModelException {			IField[] fields = type.getFields();			//build map to filter against			IMethod[] finMeths = resolveFinalMethods(type);			for (int i = 0; i < finMeths.length; i++) {				fFilter.put(createSignatureKey(finMeths[i]), finMeths[i]);			}			IMethod[] filter = type.getMethods();			for (int i = 0; i < filter.length; i++) {				fFilter.put(createSignatureKey(filter[i]), filter[i]);			}			for (int i = 0; i < fields.length; i++) {				IType fieldType = resolveTypeOfField(fields[i]);				if (fieldType == null)					continue;				IMethod[] methods = resolveMethodsHierarchy(fieldType);				ArrayList accessMethods = new ArrayList();				//show public methods; hide constructors + final methods				for (int j = 0; j < methods.length; j++) {					boolean publicField = Flags.isPublic(methods[j].getFlags());					boolean constructor = methods[j].isConstructor();					boolean finalExist = fFilter.get(createSignatureKey(methods[j])) != null;					if (publicField && !constructor && !finalExist)						accessMethods.add(new Methods2Field(methods[j], fields[i]));				}				Object[] m = accessMethods.toArray();				Methods2Field[] mf = new Methods2Field[m.length];				for (int j = 0; j < m.length; j++) {					mf[j] = (Methods2Field) m[j];				}				fTreeMap.put(fields[i].getElementName(), mf);				fFieldMap.put(fields[i].getElementName(), fields[i]);			}		}