public FilterInterpritationResult Process(CriteriaOperator filterCriteria)
        {
            AggregatedParameters = new Dictionary <string, object>();


            var actualFilterCriteria = PermanentCriteriaRepository
                                       .ToGroup(GroupOperatorType.And)
                                       .ConcatAnd(filterCriteria);


            if (actualFilterCriteria == null)
            {
                return(new FilterInterpritationResult());
            }


            var resultString = InterpritateFilter(actualFilterCriteria, BaseAlias);


            return(new FilterInterpritationResult
            {
                ResultString = resultString,
                Parameters = AggregatedParameters
            });
        }
        public NHibernateFilterCriteriaProcessor RegisterPermanentCriteria(CriteriaOperator criteriaOperator)
        {
            PermanentCriteriaRepository.Add(criteriaOperator);

            return(this);
        }