public static ImportStreetNameFromCrab GetCommandFor(
            tblStraatNaam straatnaam,
            string primaryLanguage,
            string secondaryLanguage,
            string nisCode)
        {
            MapLogging.Log(".");

            return(new ImportStreetNameFromCrab(
                       new CrabStreetNameId(straatnaam.straatNaamId),
                       new CrabMunicipalityId(straatnaam.gemeenteId),
                       new NisCode(nisCode),
                       new CrabStreetName(
                           straatnaam.straatNaam?.Trim(),
                           ParseLanguage(primaryLanguage)),
                       new CrabStreetName(
                           straatnaam.straatNaamTweedeTaal?.Trim(),
                           ParseLanguage(secondaryLanguage)),
                       new CrabTransStreetName(
                           straatnaam.transStraatNaam?.Trim(),
                           ParseLanguage(primaryLanguage)),
                       new CrabTransStreetName(
                           straatnaam.transStraatNaamTweedeTaal?.Trim(),
                           ParseLanguage(secondaryLanguage)),
                       ParseLanguage(primaryLanguage),
                       ParseLanguage(secondaryLanguage),
                       new Be.Vlaanderen.Basisregisters.Crab.CrabLifetime(
                           straatnaam.beginDatum.ToCrabLocalDateTime(),
                           straatnaam.eindDatum?.ToCrabLocalDateTime()),
                       new CrabTimestamp(straatnaam.CrabTimestamp.ToCrabInstant()),
                       new CrabOperator(straatnaam.Operator),
                       ParseBewerking(straatnaam.Bewerking),
                       ParseOrganisatie(straatnaam.Organisatie)
                       ));
        }
        public static IEnumerable <ImportStreetNameStatusFromCrab> GetCommandsFor(IEnumerable <tblStraatnaamstatus> straatnaamstatuses)
        {
            return(straatnaamstatuses
                   .Select(straatnaamStatus =>
            {
                MapLogging.Log(".");

                return new ImportStreetNameStatusFromCrab(
                    new CrabStreetNameStatusId(straatnaamStatus.straatnaamstatusid),
                    new CrabStreetNameId(straatnaamStatus.straatnaamid),
                    ParseStatus(straatnaamStatus.StraatnaamStatus),
                    new Be.Vlaanderen.Basisregisters.Crab.CrabLifetime(
                        straatnaamStatus.begindatum.ToCrabLocalDateTime(),
                        straatnaamStatus.einddatum?.ToCrabLocalDateTime()),
                    new CrabTimestamp(straatnaamStatus.CrabTimestamp.ToCrabInstant()),
                    new CrabOperator(straatnaamStatus.Operator),
                    ParseBewerking(straatnaamStatus.Bewerking),
                    ParseOrganisatie(straatnaamStatus.Organisatie));
            }));
        }