Constructs an OpenMBeanOperationInfoSupport
 instance, which describes the operation of a class of open
 MBeans, with the specified name, description,
 signature, returnOpenType, impact, and descriptor.
 The signature array parameter is internally copied,
 so that subsequent changes to the array referenced by signature have no effect on this instance.
        
        
Parameters:
 - 
name - cannot be a null or empty string.
 - 
description - cannot be a null or empty string.
 - 
signature - can be null or empty if there are no
 parameters to describe.
 - 
returnOpenType - cannot be null: use {@code
 SimpleType.VOID} for operations that return nothing.
 - 
impact - must be one of {@code ACTION}, {@code
 ACTION_INFO}, {@code INFO}, or {@code UNKNOWN}.
 - 
descriptor - The descriptor for the operation.  This may
 be null, which is equivalent to an empty descriptor.
Throws:
  - 
IllegalArgumentException - if {@code name} or {@code
 description} are null or empty string, or {@code
 returnOpenType} is null, or {@code impact} is not one of {@code
 ACTION}, {@code ACTION_INFO}, {@code INFO}, or {@code UNKNOWN}.
  - 
ArrayStoreException - If {@code signature} is not an
 array of instances of a subclass of {@code MBeanParameterInfo}.
Since:
    1.6