/* 77 */ Object descriptorTarget = d.getFieldValue("targetObject");
/* 78 */ if (descriptorTarget != null)
/* */ {
/* 80 */ String targetType = (String)d.getFieldValue("targetType");
/* 81 */ if (!"ObjectReference".equalsIgnoreCase(targetType))
/* 82 */ throw new InvalidTargetObjectTypeException("Target type is " + targetType);
/* 83 */ target = descriptorTarget;
/* */ }
/* 85 */ String getMethodString = (String)d.getFieldValue("getMethod");
/* 86 */ if ((getMethodString != null) && ((getMethod == null) || (!getMethodString.equals(getMethod.getName()))))
/* */ {
/* 88 */ MBeanInvoker invoker = invocation.getInvoker();
/* 89 */ Object object = invoker.invoke(getMethodString, new Object[0], new String[0]);
/* 90 */ checkAssignable(getMethodString, invocation.getAttributeTypeClass(), object);
/* 91 */ return object;
/* */ }
/* */ }
/* */ }
/* 95 */ if (target == null)
/* 96 */ throw new MBeanException(new ServiceNotFoundException("No Target"));
/* */ try
/* */ {
/* 99 */ value = getMethod.invoke(target, args);
/* */ }
/* */ catch (Throwable t)
/* */ {
/* 103 */ handleInvocationExceptions(t);
/* 104 */ return null;
/* */ }
/* */
/* */ }
/* */ else
/* */ {
/* 110 */ Method setMethod = this.setter;
/* 111 */ if (this.dynamic)
/* */ {
/* 113 */ Descriptor d = invocation.getDescriptor();
/* 114 */ if (d != null)
/* */ {
/* 116 */ Object descriptorTarget = d.getFieldValue("targetObject");
/* 117 */ if (descriptorTarget != null)
/* */ {
/* 119 */ String targetType = (String)d.getFieldValue("targetType");
/* 120 */ if (!"ObjectReference".equalsIgnoreCase(targetType))
/* 121 */ throw new InvalidTargetObjectTypeException("Target type is " + targetType);
/* 122 */ target = descriptorTarget;
/* */ }
/* 124 */ String setMethodString = (String)d.getFieldValue("setMethod");
/* 125 */ if ((setMethodString != null) && ((setMethod == null) || (!setMethodString.equals(setMethod.getName()))))
/* */ {