def getFileMetadataFields(self, credDict): """ Get all the defined metadata fields :param dict credDict: client credential dictionary :return: standard Dirac result object """ result = super(MultiVOFileMetadata, self)._getFileMetadataFields(credDict) if not result['OK']: return result metaDict = _stripSuffix(result['Value'], credDict) return S_OK(metaDict)
def getFileUserMetadata(self, path, credDict): """ Get metadata for the given file. :param str path: file path :param dict credDict: client credential dictionary :return: standard Dirac result object """ result = super(MultiVOFileMetadata, self).getFileUserMetadata(path, credDict) if not result['OK']: return result result['Value'] = _stripSuffix(result['Value'], credDict) return result
def removeMetadata(self, dPath, metaList, credDict): """ Remove the specified metadata for the given directory for users own VO. :param str dPath: directory path :param dict metaList: metadata names list :param dict credDict: client credential dictionary :return: standard Dirac result object """ metaList = [_getMetaName(meta, credDict) for meta in metaList] result = super(MultiVOFileMetadata, self).removeMetadata(dPath, metaList, credDict) if not result['OK']: if "FailedMetadata" in result: failedDict = _stripSuffix(result['FailedMetadata'], credDict) result['FailedMetadata'] = failedDict return result return S_OK()