2
0
mirror of https://opendev.org/x/pyghmi synced 2026-04-02 00:03:30 +00:00

Apply license from file-like object

Allow passing pre-opened files to apply_license.

Change-Id: I83e0e5352b15ef1dc73f65a1a54d0fbe03f10b3a
This commit is contained in:
Jarrod Johnson
2021-02-25 14:25:50 -05:00
parent ce19aa8034
commit 1b4005ee19
7 changed files with 15 additions and 13 deletions

View File

@@ -2066,6 +2066,6 @@ class Command(object):
self.oem_init()
return self._oem.save_licenses(directory)
def apply_license(self, filename, progress=None):
def apply_license(self, filename, progress=None, data=None):
self.oem_init()
return self._oem.apply_license(filename, progress)
return self._oem.apply_license(filename, progress, data=None)

View File

@@ -378,7 +378,7 @@ class OEMHandler(object):
def save_licenses(self, directory):
raise exc.UnsupportedFunctionality()
def apply_license(self, filename, progress=None):
def apply_license(self, filename, progress=None, data=None):
raise exc.UnsupportedFunctionality()
def get_user_expiration(self, uid):

View File

@@ -1085,7 +1085,7 @@ class OEMHandler(generic.OEMHandler):
return self.immhandler.save_licenses(directory)
return super(OEMHandler, self).save_licenses(directory)
def apply_license(self, filename, progress=None):
def apply_license(self, filename, progress=None, data=None):
if self.has_xcc:
return self.immhandler.apply_license(filename, progress)
return super(OEMHandler, self).apply_license(filename, progress)
return self.immhandler.apply_license(filename, progress, data)
return super(OEMHandler, self).apply_license(filename, progress, data)

View File

@@ -2097,7 +2097,7 @@ class XCCClient(IMMClient):
'/api/providers/imm_fod', {'FOD_LicenseKeyDelete': licid})
break
def apply_license(self, filename, progress=None):
def apply_license(self, filename, progress=None, data=None):
license_errors = {
310: "License is for a different model of system",
311: "License is for a different system serial number",
@@ -2105,7 +2105,8 @@ class XCCClient(IMMClient):
313: "License is expired",
314: "License usage limit reached",
}
uploadthread = webclient.FileUploader(self.wc, '/upload', filename)
uploadthread = webclient.FileUploader(self.wc, '/upload', filename,
data=data)
uploadthread.start()
uploadthread.join()
rsp = json.loads(uploadthread.rsp)

View File

@@ -1508,8 +1508,8 @@ class Command(object):
directory))
return self.oem.save_licenses(directory)
def apply_license(self, filename, progress=None):
return self.oem.apply_license(filename, progress)
def apply_license(self, filename, progress=None, data=None):
return self.oem.apply_license(filename, progress, data)
if __name__ == '__main__':

View File

@@ -393,7 +393,7 @@ class OEMHandler(object):
def save_licenses(self, directory):
raise exc.UnsupportedFunctionality()
def apply_license(self, filename, progress=None):
def apply_license(self, filename, progress=None, data=None):
raise exc.UnsupportedFunctionality()
def get_user_expiration(self, uid):

View File

@@ -974,7 +974,7 @@ class OEMHandler(generic.OEMHandler):
self._refresh_token()
yield savefile
def apply_license(self, filename, progress=None):
def apply_license(self, filename, progress=None, data=None):
license_errors = {
310: "License is for a different model of system",
311: "License is for a different system serial number",
@@ -982,7 +982,8 @@ class OEMHandler(generic.OEMHandler):
313: "License is expired",
314: "License usage limit reached",
}
uploadthread = webclient.FileUploader(self.wc, '/upload', filename)
uploadthread = webclient.FileUploader(self.wc, '/upload', filename,
data=data)
uploadthread.start()
uploadthread.join()
rsp = json.loads(uploadthread.rsp)