def _set_selinux_context(self):
chcon_command_exists()<EOL>if self.selinux_context:<EOL><INDENT>logger.debug("<STR_LIT>", self.path, self.selinux_context)<EOL>run_cmd(["<STR_LIT>", self.selinux_context, self.path])<EOL><DEDENT>if any([self.selinux_user, self.selinux_role, self.selinux_type, self.selinux_range]):<EOL><INDENT>logger.debug("<STR_LIT>", self.path, self.selinux_context)<EOL>pairs = [("<STR_LIT>", self.selinux_user), ("<STR_LIT>", self.selinux_role),<EOL>("<STR_LIT>", self.selinux_range), ("<STR_LIT>", self.selinux_type)]<EOL>c = ["<STR_LIT>"]<EOL>for p in pairs:<EOL><INDENT>if p[<NUM_LIT:1>]:<EOL><INDENT>c += p<EOL><DEDENT><DEDENT>c += [self.path]<EOL>run_cmd(c)<EOL><DEDENT>
Set SELinux context or fields using chcon program. Raises CommandDoesNotExistException
if the command is not present on the system.

:return: None