code: public ObjectNameBuilder withObjectName(Class<?> mBeanClass) throws MalformedObjectNameException {
          MBean annotation = mBeanClass.getAnnotation(MBean.class);
          Preconditions.notNull(annotation, mBeanClass + " is not annotated with " + MBean.class);
          return withObjectName(annotation);
      }
docs: Use introspection to obtain the objectName from the {@link MBean#objectName()} annotation attribute.
  @param mBeanClass a type annotated with {@link MBean}
  @return an ObjectNameBuilder
  @throws MalformedObjectNameException