code: def get_medium_attachment(self, name, controller_port, device):
          
          if not isinstance(name, basestring):
              raise TypeError("name can only be an instance of type basestring")
          if not isinstance(controller_port, baseinteger):
              raise TypeError("controller_port can only be an instance of type baseinteger")
          if not isinstance(device, baseinteger):
              raise TypeError("device can only be an instance of type baseinteger")
          attachment = self._call("getMediumAttachment",
                       in_p=[name, controller_port, device])
          attachment = IMediumAttachment(attachment)
          return attachment
docs: Returns a medium attachment which corresponds to the controller with
          the given name, on the given port and device slot.
  
          in name of type str
  
          in controller_port of type int
  
          in device of type int
  
          return attachment of type :class:`IMediumAttachment`
  
          raises :class:`VBoxErrorObjectNotFound`
              No attachment exists for the given controller/port/device combination.