<commit_before>from soa.tiquets import GestioTiquets
from soa.ldap import GestioLDAP
from settings import settings
from filtres.nou import FiltreNou
from filtres.reply import FiltreReply

import logging
logger = logging.getLogger(__name__)


def get_class( kls ):
  """ 
  Obtenim classe a partir del seu nom en un string
  http://stackoverflow.com/questions/452969/does-python-have-an-equivalent-to-java-class-forname 
  """
  parts = kls.split('.')
  module = ".".join(parts[:-1])
  m = __import__( module )
  for comp in parts[1:]:
    m = getattr(m, comp)            
  return m

def aplicar_filtres(mail, tickets=None, ldap=None):
  """
  Apliquem tots els filtres segons l'ordre definit al settings, mirant primer si son aplicables i aplicant despres
  """
  logger.info("Entro a mailtoticket"+mail.get_subject())

  if tickets is None: tickets=GestioTiquets()
  if ldap is None: tickets=GestioLDAP()

  filtres=[]
  for nom_filtre in settings["filtres"]:
    classe_filtre=get_class(nom_filtre)
    filtre=classe_filtre(mail,tickets,ldap) # Aixo obte la classe i d'aqui crida al constructor<commit_msg>Error a l'assignar el ldap manager<commit_after>from soa.tiquets import GestioTiquets
from soa.ldap import GestioLDAP
from settings import settings
from filtres.nou import FiltreNou
from filtres.reply import FiltreReply

import logging
logger = logging.getLogger(__name__)


def get_class( kls ):
  """ 
  Obtenim classe a partir del seu nom en un string
  http://stackoverflow.com/questions/452969/does-python-have-an-equivalent-to-java-class-forname 
  """
  parts = kls.split('.')
  module = ".".join(parts[:-1])
  m = __import__( module )
  for comp in parts[1:]:
    m = getattr(m, comp)            
  return m

def aplicar_filtres(mail, tickets=None, ldap=None):
  """
  Apliquem tots els filtres segons l'ordre definit al settings, mirant primer si son aplicables i aplicant despres
  """
  logger.info("Entro a mailtoticket"+mail.get_subject())

  if tickets is None: tickets=GestioTiquets()
  if ldap is None: ldap=GestioLDAP()

  filtres=[]
  for nom_filtre in settings["filtres"]:
    classe_filtre=get_class(nom_filtre)
    filtre=classe_filtre(mail,tickets,ldap) # Aixo obte la classe i d'aqui crida al constructor
{'fraction_non_alphanumeric': 0.10241502683363149, 'fraction_numerical': 0.007155635062611807, 'mean_word_length': 4.326190476190476, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4780911', 'n_tokens_mistral': 797, 'n_tokens_neox': 798, 'n_words': 212}