Exemple #1
0
        public override Marten.Events.StreamState Resolve(Marten.Internal.IMartenSession session, System.Data.Common.DbDataReader reader)
        {
            var streamState = new Marten.Events.StreamState();
            var id          = reader.GetFieldValue <System.Guid>(0);

            streamState.Id = id;
            var version = reader.GetFieldValue <long>(1);

            streamState.Version = version;
            SetAggregateType(streamState, reader, session);
            var lastTimestamp = reader.GetFieldValue <System.DateTimeOffset>(3);

            streamState.LastTimestamp = lastTimestamp;
            var created = reader.GetFieldValue <System.DateTimeOffset>(4);

            streamState.Created = created;
            var isArchived = reader.GetFieldValue <bool>(5);

            streamState.IsArchived = isArchived;
            return(streamState);
        }
Exemple #2
0
 public override Marten.Internal.Operations.IStorageOperation AppendEvent(Marten.Events.EventGraph events, Marten.Internal.IMartenSession session, Marten.Events.StreamAction stream, Marten.Events.IEvent e)
 {
     return(new Marten.Generated.EventStore.AppendEventOperation(stream, e));
 }
Exemple #3
0
        public override void ConfigureCommand(Weasel.Postgresql.CommandBuilder builder, Marten.Internal.IMartenSession session)
        {
            var parameters = builder.AppendWithParameters(@"select count(*) as number from public.mt_doc_user as d where d.data ->> 'FirstName' = ?");

            parameters[0].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Text;
            parameters[0].Value        = _query.FirstName;
        }
Exemple #4
0
        public override void ConfigureCommand(Weasel.Postgresql.CommandBuilder builder, Marten.Internal.IMartenSession session)
        {
            var parameters = builder.AppendWithParameters(@"WITH mt_temp_id_list1CTE as (
            select ctid, unnest(CAST(ARRAY(SELECT jsonb_array_elements_text(CAST(d.data ->> 'NumberArray' as jsonb))) as integer[])) as data from public.mt_doc_target as d WHERE (d.data ->> 'Flag' is not null and CAST(d.data ->> 'Flag' as boolean) = True)
            )
              , mt_temp_id_list2CTE as (
            select ctid from mt_temp_id_list1CTE where data = ?
            )
             select d.data from public.mt_doc_target as d where ctid in (select ctid from mt_temp_id_list2CTE)");

            parameters[0].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Integer;
            parameters[0].Value        = _query.Number;
        }
        public override void ConfigureCommand(Weasel.Postgresql.CommandBuilder builder, Marten.Internal.IMartenSession session)
        {
            var parameters = builder.AppendWithParameters(@"select d.id, d.data from public.mt_doc_user as d where d.data ->> 'UserName' = ? LIMIT ?");

            parameters[0].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Text;
            parameters[0].Value        = _query.UserName;
            _hardcoded.Apply(parameters);
        }
        public override void ConfigureCommand(Weasel.Postgresql.CommandBuilder builder, Marten.Internal.IMartenSession session)
        {
            var parameters = builder.AppendWithParameters(@"select d.data from public.mt_doc_user as d where d.data ->> 'UserName' LIKE ?");

            parameters[0].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Text;
            parameters[0].Value        = ContainsString(_query.Contains);
        }
 public override Marten.Linq.QueryHandlers.IQueryHandler <bool> BuildHandler(DocumentDbTests.Reading.Linq.Compiled.CompiledQuery2 query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.NoneCompiledQuery2CompiledQuery1615176812(_queryHandler, query, _hardcoded));
 }
 public override Marten.Linq.QueryHandlers.IQueryHandler <System.Collections.Generic.IEnumerable <Marten.Testing.Documents.User> > BuildHandler(DocumentDbTests.Reading.Linq.Compiled.compiled_query_by_string_fragments.UserNameStartsWith query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.NoneUserNameStartsWithCompiledQuery515679394(_maybeStatefulHandler, query, null, _hardcoded));
 }
Exemple #9
0
 public override Marten.Linq.QueryHandlers.IQueryHandler <System.Collections.Generic.IEnumerable <Marten.Testing.Documents.User> > BuildHandler(DocumentDbTests.Reading.Linq.Compiled.FindJsonUsersByUsername query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.NoneFindJsonUsersByUsernameCompiledQuery1607037309(_maybeStatefulHandler, query, null, _hardcoded));
 }
 public override Marten.Linq.QueryHandlers.IQueryHandler <System.Collections.Generic.IEnumerable <Marten.Testing.Documents.Issue> > BuildHandler(DocumentDbTests.Reading.Includes.end_to_end_query_with_compiled_include_Tests.IssueWithUsers query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.QueryOnlyIssueWithUsersCompiledQuery2026718760(_maybeStatefulHandler, query, _hardcoded));
 }
 public override Marten.Linq.QueryHandlers.IQueryHandler <Marten.Testing.Documents.User> BuildHandler(DocumentDbTests.Reading.Linq.Compiled.FindUserByAllTheThings query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.NoneFindUserByAllTheThingsCompiledQuery878799577(_maybeStatefulHandler, query, null, _hardcoded));
 }
Exemple #12
0
        public override void ConfigureCommand(Weasel.Postgresql.CommandBuilder builder, Marten.Internal.IMartenSession session)
        {
            var parameters = builder.AppendWithParameters(SQL);

            parameters[0].Value        = Stream.Version;
            parameters[0].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Bigint;
            parameters[1].Value        = Stream.Id;
            parameters[1].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Uuid;
            parameters[2].Value        = Stream.ExpectedVersionOnServer;
            parameters[2].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Bigint;
        }
Exemple #13
0
        public override async System.Threading.Tasks.Task <Marten.Events.StreamState> ResolveAsync(Marten.Internal.IMartenSession session, System.Data.Common.DbDataReader reader, System.Threading.CancellationToken token)
        {
            var streamState = new Marten.Events.StreamState();
            var id          = await reader.GetFieldValueAsync <System.Guid>(0, token).ConfigureAwait(false);

            streamState.Id = id;
            var version = await reader.GetFieldValueAsync <long>(1, token).ConfigureAwait(false);

            streamState.Version = version;
            await SetAggregateTypeAsync(streamState, reader, session, token);

            var lastTimestamp = await reader.GetFieldValueAsync <System.DateTimeOffset>(3, token).ConfigureAwait(false);

            streamState.LastTimestamp = lastTimestamp;
            var created = await reader.GetFieldValueAsync <System.DateTimeOffset>(4, token).ConfigureAwait(false);

            streamState.Created = created;
            var isArchived = await reader.GetFieldValueAsync <bool>(5, token).ConfigureAwait(false);

            streamState.IsArchived = isArchived;
            return(streamState);
        }
Exemple #14
0
        public override void ConfigureCommand(Weasel.Postgresql.CommandBuilder builder, Marten.Internal.IMartenSession session)
        {
            var npgsqlParameterArray = builder.AppendWithParameters(SQL);

            npgsqlParameterArray[0].Value  = _streamId;
            npgsqlParameterArray[0].DbType = System.Data.DbType.Guid;
        }
Exemple #15
0
 public override Marten.Linq.QueryHandlers.IQueryHandler <System.Collections.Generic.IEnumerable <Marten.Testing.Documents.Target> > BuildHandler(DocumentDbTests.Reading.Linq.invoking_query_with_statistics.TargetPaginationQuery query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.NoneTargetPaginationQueryCompiledQuery323866534(_maybeStatefulHandler, query, query.Stats, _hardcoded));
 }
        public override void ConfigureCommand(Weasel.Postgresql.CommandBuilder builder, Marten.Internal.IMartenSession session)
        {
            var parameters = builder.AppendWithParameters(@"select d.id, d.data from public.mt_doc_simpleequalsparsertests_querytarget as d where (CAST(d.data ->> 'IntProp' as integer) = ? and d.id = ?) LIMIT ?");

            parameters[1].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Uuid;
            parameters[1].Value        = _query.IdProp;

            parameters[0].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Integer;
            parameters[0].Value        = _query.IntProp;

            parameters[2].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Integer;
            parameters[2].Value        = _query.IntProp;
        }
Exemple #17
0
 public override Marten.Linq.QueryHandlers.IQueryHandler <DocumentDbTests.Reading.Linq.Compiled.LoginPayload> BuildHandler(DocumentDbTests.Reading.Linq.Compiled.UserProjectionToLoginPayload query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.NoneUserProjectionToLoginPayloadCompiledQuery1260512725(_queryHandler, query, _hardcoded));
 }
 public override Marten.Linq.QueryHandlers.IQueryHandler <DocumentDbTests.Reading.Linq.SimpleEqualsParserTests.QueryTarget> BuildHandler(DocumentDbTests.Reading.Linq.SimpleEqualsParserTests.CompiledQueryTarget query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.NoneCompiledQueryTargetCompiledQuery9758203(_maybeStatefulHandler, query, null, _hardcoded));
 }
        public override void ConfigureCommand(Weasel.Postgresql.CommandBuilder builder, Marten.Internal.IMartenSession session)
        {
            var parameters = builder.AppendWithParameters(@"select TRUE as result from public.mt_doc_target as d where d.id = ? LIMIT ?");

            parameters[0].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Uuid;
            parameters[0].Value        = _query.IdValue;
            _hardcoded.Apply(parameters);
        }
Exemple #20
0
        public override void ConfigureCommand(Weasel.Postgresql.CommandBuilder builder, Marten.Internal.IMartenSession session)
        {
            var parameters = builder.AppendWithParameters(@"drop table if exists mt_temp_id_list1;
            create temp table mt_temp_id_list1 as (
            select id, CAST(d.data ->> 'AssigneeId' as uuid) as id1 from public.mt_doc_issue as d  where d.data ->> 'Title' = ?
            ); select d.data from public.mt_doc_user as d where id in (select id1 from mt_temp_id_list1);
             select d.data from public.mt_doc_issue as d where id in (select id from mt_temp_id_list1)");

            parameters[0].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Text;
            parameters[0].Value        = _query.Title;
        }
 public override Marten.Linq.QueryHandlers.IQueryHandler <Marten.Testing.Documents.User> BuildHandler(DocumentDbTests.Reading.Linq.Compiled.UserByUsernameSingleOrDefault query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.NoneUserByUsernameSingleOrDefaultCompiledQuery97871325(_maybeStatefulHandler, query, null, _hardcoded));
 }
Exemple #22
0
        public override Marten.Linq.QueryHandlers.IQueryHandler <Marten.Testing.Documents.Issue> BuildHandler(Marten.Internal.IMartenSession session)
        {
            var cloned         = _inner.CloneForSession(session, null);
            var includeWriters = new Marten.Linq.Includes.IIncludeReader[] { Marten.Linq.Includes.Include.ReaderToList(session, _query.Included) };
            var included       = new Marten.Linq.Includes.IncludeQueryHandler <Marten.Testing.Documents.Issue>((Marten.Linq.QueryHandlers.IQueryHandler <Marten.Testing.Documents.Issue>)cloned, includeWriters);

            return(included);
        }
 public override Marten.Linq.QueryHandlers.IQueryHandler <System.Collections.Generic.IEnumerable <Marten.Testing.Documents.User> > BuildHandler(DocumentDbTests.Bugs.Bug_606_string_contains_starts_or_ends_with_in_compiled_queries.WhereUsernameContains query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.QueryOnlyWhereUsernameContainsCompiledQuery893470325(_maybeStatefulHandler, query, null, _hardcoded));
 }
Exemple #24
0
 public override Marten.Linq.QueryHandlers.IQueryHandler <Marten.Testing.Documents.Issue> BuildHandler(DocumentDbTests.Reading.Includes.end_to_end_query_with_compiled_include_Tests.IssueByTitleWithAssignee query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.QueryOnlyIssueByTitleWithAssigneeCompiledQuery113072566(_maybeStatefulHandler, query, _hardcoded));
 }
 public override Marten.Linq.QueryHandlers.IQueryHandler <Marten.Testing.Documents.User> BuildHandler(DocumentDbTests.Reading.Linq.Compiled.UserByUsername query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.IdentityOnlyUserByUsernameCompiledQuery661477123(_maybeStatefulHandler, query, null, _hardcoded));
 }
Exemple #26
0
 public override Marten.Linq.QueryHandlers.IQueryHandler <System.Collections.Generic.IEnumerable <Marten.Testing.Documents.User> > BuildHandler(DocumentDbTests.Reading.Linq.Compiled.UsersByFirstNameWithFields query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.QueryOnlyUsersByFirstNameWithFieldsCompiledQuery906880034(_maybeStatefulHandler, query, null, _hardcoded));
 }
Exemple #27
0
 public override Marten.Linq.QueryHandlers.IQueryHandler <System.Collections.Generic.IEnumerable <Marten.Testing.Documents.Target> > BuildHandler(DocumentDbTests.Bugs.Bug_784_Collection_Contains_within_compiled_query.FunnyTargetQuery query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.QueryOnlyFunnyTargetQueryCompiledQuery1643467126(_maybeStatefulHandler, query, null, _hardcoded));
 }
Exemple #28
0
        public override void ConfigureCommand(Weasel.Postgresql.CommandBuilder builder, Marten.Internal.IMartenSession session)
        {
            var parameters = builder.AppendWithParameters(@"select d.id, d.data, count(1) OVER() as total_rows from public.mt_doc_target as d where CAST(d.data ->> 'Number' as integer) > ? OFFSET ? LIMIT ?");

            parameters[1].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Integer;
            parameters[1].Value        = _query.PageNumber;

            parameters[2].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Integer;
            parameters[2].Value        = _query.PageSize;
            _hardcoded.Apply(parameters);
        }
Exemple #29
0
 public override Marten.Linq.QueryHandlers.IQueryHandler <int> BuildHandler(DocumentDbTests.Reading.Linq.Compiled.UserCountByFirstName query, Marten.Internal.IMartenSession session)
 {
     return(new Marten.Generated.CompiledQueries.NoneUserCountByFirstNameCompiledQuery1983785893(_queryHandler, query, _hardcoded));
 }
Exemple #30
0
        public override void ConfigureCommand(Weasel.Postgresql.CommandBuilder builder, Marten.Internal.IMartenSession session)
        {
            var parameters = builder.AppendWithParameters(SQL);

            parameters[0].Value        = Stream.Id;
            parameters[0].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Uuid;
            parameters[1].Value        = Stream.AggregateTypeName != null ? (object)Stream.AggregateTypeName : System.DBNull.Value;
            parameters[1].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Text;
            parameters[2].Value        = Stream.Version;
            parameters[2].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Bigint;
            parameters[3].Value        = Stream.TenantId != null ? (object)Stream.TenantId : System.DBNull.Value;
            parameters[3].NpgsqlDbType = NpgsqlTypes.NpgsqlDbType.Text;
        }