'Create a new masking view.
:param array: the array serial number
:param maskingview_name: the masking view name
:param storagegroup_name: the storage group name
:param port_group_name: the port group
:param init_group_name: the initiator group
:param extra_specs: extra specifications'

def create_masking_view(self, array, maskingview_name, storagegroup_name, port_group_name, init_group_name, extra_specs):

    payload = {'executionOption': 'ASYNCHRONOUS', 'portGroupSelection': {'useExistingPortGroupParam': {'portGroupId': port_group_name}}, 'maskingViewId': maskingview_name, 'hostOrHostGroupSelection': {'useExistingHostParam': {'hostId': init_group_name}}, 'storageGroupSelection': {'useExistingStorageGroupParam': {'storageGroupId': storagegroup_name}}}
    (status_code, job) = self.create_resource(array, SLOPROVISIONING, 'maskingview', payload)
    self.wait_for_job('Create    masking    view', status_code, job, extra_specs)
