Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def getInstalledProductStatus(product_directory=None,
- entitlement_directory=None, facts=None):
- """
- Returns the Installed products and their subscription states
- """
- # allow us to stub these out for testing
- product_directory = product_directory or certdirectory.ProductDirectory()
- entitlement_directory = entitlement_directory or certdirectory.EntitlementDirectory()
- product_status = []
- print facts
- sorter = CertSorter(product_directory, entitlement_directory, facts_dict=facts)
- for cert in sorter.valid_products.itervalues():
- eproducts = cert.getProducts()
- for product in eproducts:
- status = map_status(cert.valid())
- data = (product.getName(), status,
- formatDate(cert.validRange().end()),
- cert.serialNumber(),
- cert.getOrder().getContract(),
- cert.getOrder().getAccountNumber())
- product_status.append(data)
- # add in any products that we have installed but don't have
- # entitlements for
- for product_cert in sorter.unentitled_products.itervalues():
- print "We have unentitled products"
- product = product_cert.getProduct()
- product_status.append((product.getName(), map_status(None), "", "", "", ""))
- # add in any partially entitled products
- for cert in sorter.partially_valid_products.itervalues():
- print "We have partially valid products"
- pproducts = cert.getProducts()
- for product in pproducts:
- data = (product.getName(),
- _("Partially Subscribed"),
- formatDate(cert.validRange().end()),
- cert.serialNumber(),
- cert.getOrder().getContract(),
- cert.getOrder().getAccountNumber())
- product_status.append(data)
- return product_status
Add Comment
Please, Sign In to add comment