GetIn.UserRepository.BuildLookupCriteria C# (CSharp) Method

BuildLookupCriteria() private method

private BuildLookupCriteria ( User user ) : ICriteria
user User
return ICriteria
        private ICriteria BuildLookupCriteria(User user)
        {
            ICriteria lookupCriteria = Session.CreateCriteria(typeof(User));
            if (user.LoginId != null)
            {
                AddRestriction(lookupCriteria, "LoginId", user.LoginId, true);
            }
            if (user.Name != null)
            {
                AddRestriction(lookupCriteria, "Name.FirstName", user.Name.FirstName, false);
                AddRestriction(lookupCriteria, "Name.LastName", user.Name.LastName, false);
            }
            if (user.Location != null)
            {
                AddRestriction(lookupCriteria, "Location.Country", user.Location.Country, false);
                AddRestriction(lookupCriteria, "Location.City", user.Location.City, false);
                AddRestriction(lookupCriteria, "Location.ZipCode", user.Location.ZipCode, false);
            }
            AddRestriction(lookupCriteria, "Gender", user.Gender, true);
            if (user.Profile != null && !String.IsNullOrEmpty(user.Profile.ProfileText)){
                Profile wildCardProfile = new Profile("%" + user.Profile.ProfileText + "%");
                AddRestriction(lookupCriteria, "Profile", wildCardProfile, false);
            }

            return lookupCriteria;
        }