code: def write(self, format_p, options, path):
          
          if not isinstance(format_p, basestring):
              raise TypeError("format_p can only be an instance of type basestring")
          if not isinstance(options, list):
              raise TypeError("options can only be an instance of type list")
          for a in options[:10]:
              if not isinstance(a, ExportOptions):
                  raise TypeError(
                          "array can only contain objects of type ExportOptions")
          if not isinstance(path, basestring):
              raise TypeError("path can only be an instance of type basestring")
          progress = self._call("write",
                       in_p=[format_p, options, path])
          progress = IProgress(progress)
          return progress
docs: Writes the contents of the appliance exports into a new OVF file.
          
          Calling this method is the final step of exporting an appliance from VirtualBox;
          see :py:class:`IAppliance`  for an overview.
          
          Since exporting the appliance will most probably involve copying and converting
          disk images, which can take a long time, this method operates asynchronously and
          returns an IProgress object to allow the caller to monitor the progress.
  
          in format_p of type str
              Output format, as a string. Currently supported formats are "ovf-0.9", "ovf-1.0",
              "ovf-2.0" and "opc-1.0"; future versions of VirtualBox may support additional formats.
              The "opc-1.0" format is for creating tarballs for the Oracle Public Cloud.
  
          in options of type :class:`ExportOptions`
              Options for the exporting operation.
  
          in path of type str
              Name of appliance file to create.  There are certain restrictions with regard
              to the file name suffix.  If the format parameter is "opc-1.0" a .tar.gz
              suffix is required.  Otherwise the suffix must either be .ovf or
              .ova, depending on whether the appliance is distributed as a set of
              files or as a single file, respectively.
  
          return progress of type :class:`IProgress`
              Progress object to track the operation completion.