195 lines
7.1 KiB
C#
195 lines
7.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Collections.Concurrent;
|
|
|
|
|
|
using Amazon.Runtime;
|
|
using Amazon.DynamoDBv2;
|
|
using Amazon.DynamoDBv2.Model;
|
|
using Amazon.DynamoDBv2.DocumentModel;
|
|
|
|
|
|
|
|
using ServerCore; using ServerBase;
|
|
|
|
|
|
|
|
namespace ServerBase;
|
|
|
|
|
|
//==============================================================================================
|
|
// QueryContextBase 의 GetSet 함수들
|
|
//==============================================================================================
|
|
public abstract partial class QueryExecutorBase
|
|
{
|
|
public void setQueryBatch(QueryBatchBase parent) => m_parent = parent;
|
|
|
|
public QueryBatchBase? getQueryBatch() => m_parent;
|
|
|
|
public string getQueryName() => m_query_name;
|
|
}
|
|
|
|
|
|
//==============================================================================================
|
|
// QueryBatchBase 의 GetSet 함수들
|
|
//==============================================================================================
|
|
public abstract partial class QueryBatchBase
|
|
{
|
|
public bool isUseTransact() => m_is_use_transact;
|
|
|
|
public string getTransId() => m_trans_id;
|
|
|
|
public bool hasQuery() => 0 < m_querys.Count;
|
|
|
|
public Int32 getQueryCount() => m_querys.Count;
|
|
|
|
public IWithLogActor getLogActor() => m_log_actor;
|
|
|
|
public void setLogActor(IWithLogActor logActor) => m_log_actor = logActor;
|
|
|
|
public IQueryRunner getQueryRunner() => m_query_runner;
|
|
|
|
public DynamoDbClient getDynamoDbConnector() => m_dynamo_db_connector;
|
|
|
|
public LogAction getLogAction() => m_log_action;
|
|
|
|
public List<ILogInvoker> getLogInvokers() => m_business_logs;
|
|
}
|
|
|
|
//==============================================================================================
|
|
// QueryRunnerWithItemRequest 의 GetSet 함수들
|
|
//==============================================================================================
|
|
public partial class QueryRunnerWithItemRequest : IQueryRunner
|
|
{
|
|
public QueryBatchBase? getQueryBatch() => m_query_batch;
|
|
|
|
public void setQueryBatch(QueryBatchBase queryBatch) => m_query_batch = queryBatch;
|
|
|
|
public List<IQueryDbRequester> getDbRequesters() => m_db_requesters;
|
|
|
|
public List<AmazonWebServiceResponse> getDbResponses() => m_db_responses;
|
|
|
|
public void addDbResponse(AmazonWebServiceResponse dbResponse)
|
|
{
|
|
m_db_responses.Add(dbResponse);
|
|
}
|
|
}
|
|
|
|
|
|
//==============================================================================================
|
|
// QueryRunnerWithDocument 의 GetSet 함수들
|
|
//==============================================================================================
|
|
public partial class QueryRunnerWithDocument : IQueryRunner
|
|
{
|
|
public QueryBatchBase? getQueryBatch() => m_query_batch;
|
|
public void setQueryBatch(QueryBatchBase queryBatch) => m_query_batch = queryBatch;
|
|
}
|
|
|
|
|
|
//==============================================================================================
|
|
// QueryDbRequesterWithItemRequestBase<TDbRequestType> 의 GetSet 함수들
|
|
//==============================================================================================
|
|
public abstract partial class QueryDbRequesterWithItemRequestBase<TDbRequestType> : IQueryDbRequester
|
|
{
|
|
public TDbRequestType getDbRequestGenericType() => m_db_request;
|
|
|
|
public void setQueryBatch(QueryBatchBase queryBatch) => m_query_batch = queryBatch;
|
|
|
|
public QueryBatchBase? getQueryBatch() => m_query_batch;
|
|
|
|
public Int32 getQueryCount()
|
|
{
|
|
NullReferenceCheckHelper.throwIfNull(m_query_batch, () => $"m_query_batch is null !!!");
|
|
return m_query_batch.getQueryCount();
|
|
}
|
|
}
|
|
|
|
|
|
//==============================================================================================
|
|
// QueryDbRequesterWithDocumentBatchWriteBase<TDbRequestType> 의 GetSet 함수들
|
|
//==============================================================================================
|
|
public abstract partial class QueryDbRequesterWithDocumentBatchWriteBase<TDbRequestType> : IQueryDbRequester, IWithDocumentModel
|
|
where TDbRequestType : DocumentBatchWrite
|
|
{
|
|
public TDbRequestType? getDbRequestGenericType() => m_db_request;
|
|
|
|
public Table? getTable() => m_table;
|
|
|
|
public void setQueryBatch(QueryBatchBase queryBatch) => m_query_batch = queryBatch;
|
|
|
|
public QueryBatchBase? getQueryBatch() => m_query_batch;
|
|
|
|
public Int32 getQueryCount()
|
|
{
|
|
NullReferenceCheckHelper.throwIfNull(m_query_batch, () => $"m_query_batch is null !!!");
|
|
return m_query_batch.getQueryCount();
|
|
}
|
|
}
|
|
|
|
//==============================================================================================
|
|
// QueryDbRequesterWithDocumentBatchGetBase<TDbRequestType> 의 GetSet 함수들
|
|
//==============================================================================================
|
|
public abstract partial class QueryDbRequesterWithDocumentBatchGetBase<TDbRequestType> : IQueryDbRequester, IWithDocumentModel
|
|
where TDbRequestType : DocumentBatchGet
|
|
{
|
|
public TDbRequestType? getDbRequestGenericType() => m_db_request;
|
|
|
|
public Table? getTable() => m_table;
|
|
|
|
public void setQueryBatch(QueryBatchBase queryBatch) => m_query_batch = queryBatch;
|
|
|
|
public QueryBatchBase? getQueryBatch() => m_query_batch;
|
|
|
|
public Int32 getQueryCount()
|
|
{
|
|
NullReferenceCheckHelper.throwIfNull(m_query_batch, () => $"m_query_batch is null !!!");
|
|
return m_query_batch.getQueryCount();
|
|
}
|
|
}
|
|
|
|
|
|
//==============================================================================================
|
|
// QueryDbRequesterWithDocumentTransactWriteBase<TDbRequestType> 의 GetSet 함수들
|
|
//==============================================================================================
|
|
public abstract partial class QueryDbRequesterWithDocumentTransactWriteBase<TDbRequestType> : IQueryDbRequester, IWithDocumentModel
|
|
where TDbRequestType : DocumentTransactWrite
|
|
{
|
|
public TDbRequestType? getDbRequestGenericType() => m_db_request;
|
|
|
|
public Table? getTable() => m_table;
|
|
|
|
public void setQueryBatch(QueryBatchBase queryBatch) => m_query_batch = queryBatch;
|
|
|
|
public QueryBatchBase? getQueryBatch() => m_query_batch;
|
|
|
|
public Int32 getQueryCount()
|
|
{
|
|
NullReferenceCheckHelper.throwIfNull(m_query_batch, () => $"m_query_batch is null !!!");
|
|
return m_query_batch.getQueryCount();
|
|
}
|
|
}
|
|
|
|
//==============================================================================================
|
|
// QueryDbRequesterWithDocumentTransactGetBase<TDbRequestType> 의 GetSet 함수들
|
|
//==============================================================================================
|
|
public abstract partial class QueryDbRequesterWithDocumentTransactGetBase<TDbRequestType> : IQueryDbRequester, IWithDocumentModel
|
|
where TDbRequestType : DocumentTransactGet
|
|
{
|
|
public TDbRequestType? getDbRequestGenericType() => m_db_request;
|
|
|
|
public Table? getTable() => m_table;
|
|
|
|
public void setQueryBatch(QueryBatchBase queryBatch) => m_query_batch = queryBatch;
|
|
|
|
public QueryBatchBase? getQueryBatch() => m_query_batch;
|
|
|
|
public Int32 getQueryCount()
|
|
{
|
|
NullReferenceCheckHelper.throwIfNull(m_query_batch, () => $"m_query_batch is null !!!");
|
|
return m_query_batch.getQueryCount();
|
|
}
|
|
}
|