Так как для QuikTerminals нет Builder, пришлось хранить IsProcessTaskInUse в QuikTransactions
<QuikTransactions>
<Name>Quik Transactions</Name>
<Code>Quik Transactions</Code>
<IsEnabled>true</IsEnabled>
<IsEvlEnabled>true</IsEvlEnabled>
<Category>Transactions</Category>
<Entity>Transaction</Entity>
<!-- Need for QuikTerminal -->
Достается в QuikTerminal так:
Transactions = Builder.Build<QuikTransactions>(@"Init\QuikTransactions.xml", "QuikTransactions");
Transactions.Parent = this;
<QuikTransactions>
<Name>Quik Transactions</Name>
<Code>Quik Transactions</Code>
<IsEnabled>true</IsEnabled>
<IsEvlEnabled>true</IsEvlEnabled>
<Category>Transactions</Category>
<Entity>Transaction</Entity>
<!-- Need for QuikTerminal -->
<IsProcessTaskInUse>false</IsProcessTaskInUse>
</QuikTransactions>Достается в QuikTerminal так:
Transactions = Builder.Build<QuikTransactions>(@"Init\QuikTransactions.xml", "QuikTransactions");
Transactions.Parent = this;
IsProcessTaskInUse = Transactions.IsProcessTaskInUse;
SetupProcessTask();
private void SetupProcessTask()
{
if (!IsProcessTaskInUse)
{
Evlm2(EvlResult.WARNING, EvlSubject.TECHNOLOGY, ParentName, Name,
MethodBase.GetCurrentMethod().Name, "ProcessTask Will NOT BE USED",
ToString());
return;
}
ProcessTask = new ProcessTask<IEventArgs1>();
ProcessTask.Init();
ProcessTask.TimeInterval = 1000;
ProcessTask.Parent = this;
ProcessTask.IsEveryItemPushProcessing = true;
ProcessTask.ItemProcessingAction = args =>
{
try
{
args.Action(args);
}
catch (Exception e)
{
SendException(e);
}
};
Evlm2(EvlResult.INFO, EvlSubject.TECHNOLOGY, ParentName, Name,
MethodBase.GetCurrentMethod().Name, "ProcessTask Will be Used",
ProcessTask.ToString());
}
Комментариев нет:
Отправить комментарий