code: public ObjectMethodsDef[] listMethods(Context context,
                                            String PID,
                                            Date asOfDateTime)
              throws ServerException {
          String[] sDefPIDs = getServiceDefinitions(context, PID, asOfDateTime);
          Date versDateTime = asOfDateTime;
          ArrayList<ObjectMethodsDef> objectMethods =
                  new ArrayList<ObjectMethodsDef>();
          for (String element : sDefPIDs) {
              MethodDef[] methodDefs =
                      getMethods(context, PID, element, asOfDateTime);
              for (MethodDef element2 : methodDefs) {
                  ObjectMethodsDef method = new ObjectMethodsDef();
                  method.PID = PID;
                  method.asOfDate = versDateTime;
                  method.sDefPID = element;
                  method.methodName = element2.methodName;
                  method.methodParmDefs = element2.methodParms;
                  objectMethods.add(method);
              }
          }
          return objectMethods
                  .toArray(OBJ_METHOD_DEF_ARRAY_TYPE);
      }
docs: Get the definitions for all dynamic disseminations on the object. This
  will return the method definitions for all methods for all of the dynamic
  disseminators associated with the object.
  
  @param context
  @param PID
  identifier of digital object being reflected upon
  @param asOfDateTime
  @return an array of object method definitions
  @throws ServerException