def __init__(self, cfg):
LOG.debug("<STR_LIT>", cfg.firewall.device)<EOL>self.fw_init = False<EOL>if cfg.firewall.device is None or cfg.firewall.device is '<STR_LIT>':<EOL><INDENT>return<EOL><DEDENT>super(FwMgr, self).__init__(cfg)<EOL>self.events.update({<EOL>'<STR_LIT>': self.fw_rule_create,<EOL>'<STR_LIT>': self.fw_rule_delete,<EOL>'<STR_LIT>': self.fw_rule_update,<EOL>'<STR_LIT>': self.fw_policy_create,<EOL>'<STR_LIT>': self.fw_policy_delete,<EOL>'<STR_LIT>': self.fw_create,<EOL>'<STR_LIT>': self.fw_update,<EOL>'<STR_LIT>': self.fw_delete})<EOL>self.fwid_attr = {}<EOL>self.pid_dict = {}<EOL>self.rules_id = {}<EOL>self.fw_drvr_created = False<EOL>self.fabric = fabric.FabricBase()<EOL>self.tenant_db = FwTenant()<EOL>self.os_helper = OsHelper.DfaNeutronHelper()<EOL>fw_dict = self.populate_local_cache()<EOL>self.populate_local_sch_cache(fw_dict)<EOL>self.dcnm_obj = None<EOL>self.fw_init = True<EOL>
Initialization routine.

        It populates the local cache after reading the DB. It initializes the
        Fabric class and DeviceMgr class.