private Status addMembers(Class<?> busInterface) throws AnnotationBusException { for (Method member : members) { int type = INVALID; int annotation = 0; String accessPerm = null; BusMethod m = member.getAnnotation(BusMethod.class); BusSignal s = member.getAnnotation(BusSignal.class); AccessPermission ap = member.getAnnotation(AccessPermission.class); if (m != null) { type = METHOD_CALL; annotation = m.annotation(); } else if (s != null) { type = SIGNAL; annotation = s.annotation(); } if (type != INVALID) { if (ap != null) { accessPerm = ap.value(); } String memberName = getName(member); Status status = addMember( type, memberName, getInputSig(member), getOutSig(member), annotation, accessPerm); if (status != Status.OK) { return status; } // pull out the DBus annotations BusAnnotations dbusAnnotations = member.getAnnotation(BusAnnotations.class); if (dbusAnnotations != null) { for (BusAnnotation busAnnotation : dbusAnnotations.value()) { addMemberAnnotation(memberName, busAnnotation.name(), busAnnotation.value()); } } } } return Status.OK; }