Skip to content

Commit

Permalink
修改
Browse files Browse the repository at this point in the history
修改了一些持久化BUG
  • Loading branch information
qiujoe committed Jan 19, 2016
1 parent 3227cca commit 885abbc
Show file tree
Hide file tree
Showing 8 changed files with 77 additions and 40 deletions.
79 changes: 45 additions & 34 deletions Quanter.Persistence/PersistenceActor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,41 +31,49 @@ public PersistenceActor()

protected override void OnReceive(object message)
{
PersistenceRequest pr = message as PersistenceRequest;
if(pr != null)
{
switch(pr.Type)
try {
PersistenceRequest pr = message as PersistenceRequest;
if (pr != null)
{
case PersistenceType.INIT_DATABASE:
_createTables();
break;
case PersistenceType.OPEN:
_log.Debug("初始化,并打开Session");
_init();
_openSession();
break;
case PersistenceType.SAVE:
_save(pr.Body);
break;
case PersistenceType.LOAD:
//_load((int)pr.Body);
break;
case PersistenceType.UPDATE:
_update(pr.Body);
break;
case PersistenceType.LIST:
_list((String)pr.Body);
break;
case PersistenceType.FIND:
_find((String)pr.Body);
break;
case PersistenceType.CLOSE:
_log.Debug("关闭Session");
// _closeSession();
break;
default:
break;
switch (pr.Type)
{
case PersistenceType.INIT_DATABASE:
_createTables();
break;
case PersistenceType.OPEN:
_log.Debug("初始化,并打开Session");
_init();
_openSession();
break;
case PersistenceType.SAVE:
_save(pr.Body);
break;
case PersistenceType.LOAD:
//_load((int)pr.Body);
break;
case PersistenceType.DELETE:
_delete(pr.Body);
break;
case PersistenceType.UPDATE:
_update(pr.Body);
break;
case PersistenceType.LIST:
_list((String)pr.Body);
break;
case PersistenceType.FIND:
_find((String)pr.Body);
break;
case PersistenceType.CLOSE:
_log.Debug("关闭Session");
// _closeSession();
break;
default:
break;
}
}
} catch (Exception e)
{
_log.Error("PersistenceActor.OnReceive 发生异常: {0}", e.StackTrace);
}
}

Expand Down Expand Up @@ -103,8 +111,8 @@ private void _save(Object obj)
_log.Debug("保存对象 {0}", obj.GetType().ToString());
try {
session.Save(obj);
session.Flush();
Sender.Tell(obj);

} catch (Exception e)
{
_log.Error("保存发生异常 {0}", e.StackTrace);
Expand All @@ -115,6 +123,8 @@ private void _update(Object obj)
{
_log.Debug("更新对象 {0}", obj.GetType().ToString());
session.Update(obj);
session.Flush();
Sender.Tell(obj);
}

private void _delete(Type theType, int id)
Expand All @@ -126,6 +136,7 @@ private void _delete(Type theType, int id)
private void _delete(Object obj)
{
session.Delete(obj);
session.Flush();
}

private void _load(Type theType, int id)
Expand Down
4 changes: 2 additions & 2 deletions Quanter.Persistence/Quanter.Persistence.Server.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="Akka, Version=1.0.5.14, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Akka.1.0.5\lib\net45\Akka.dll</HintPath>
<Reference Include="Akka, Version=1.0.6.16, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\..\quanter.private\packages\Akka.1.0.6\lib\net45\Akka.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
Expand Down
2 changes: 1 addition & 1 deletion Quanter.Persistence/packages.config
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Akka" version="1.0.5" targetFramework="net452" />
<package id="Akka" version="1.0.6" targetFramework="net452" />
<package id="EntityFramework" version="6.0.0" targetFramework="net452" />
<package id="Iesi.Collections" version="4.0.0.4000" targetFramework="net452" />
<package id="Newtonsoft.Json" version="7.0.1" targetFramework="net452" />
Expand Down
1 change: 1 addition & 0 deletions Quanter.Trader.Messages/Constants.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ namespace Quanter.Trader.Messages
{
public class ConstantsHelper
{
public static String AKKA_PATH_SERVER = "server";
public static String AKKA_PATH_STRATEGY_MANAGER = "strategy";
public static String AKKA_PATH_MARKET_MANAGER = "market";
public static String AKKA_PATH_PERSISTENCE = "persistence";
Expand Down
4 changes: 4 additions & 0 deletions Quanter.Trader.Messages/MarketMessages.cs
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,17 @@ public class MarketRequest
{
public enum RequestType
{
INIT,
START,
STOP,
ADD_SECURITIES,
ADD_STRATEGY,
REMOVE_STARTEGY,
}

public RequestType Type { get; set; }

public Object Body { get; set; }
}

public class StopMarketRequest
Expand Down
4 changes: 2 additions & 2 deletions Quanter.Trader.Messages/Quanter.Trader.Messages.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="Akka, Version=1.0.5.14, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Akka.1.0.5\lib\net45\Akka.dll</HintPath>
<Reference Include="Akka, Version=1.0.6.16, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\..\quanter.private\packages\Akka.1.0.6\lib\net45\Akka.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Akka.Remote, Version=1.0.5.15, Culture=neutral, processorArchitecture=MSIL">
Expand Down
21 changes: 21 additions & 0 deletions Quanter.Trader.Messages/TradeMessages.cs
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,15 @@ public class Order

public class TradeRequest
{
public enum RequestType
{
INIT,
BUY,
SELL,
}

public RequestType Type { get; set; }

public OrderType OrderType { get; set; }

public TradeInterface TradeInterface { get; set; }
Expand All @@ -72,4 +81,16 @@ public class TradeResponse
public int EntrustNo { get; set; }
public String Message { get; set; }
}

public class TradeManagerRequest
{
public enum RequestType
{
INIT,
}

public RequestType Type { get; set; }
public Object Body { get; set; }
}

}
2 changes: 1 addition & 1 deletion Quanter.Trader.Messages/packages.config
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Akka" version="1.0.5" targetFramework="net452" />
<package id="Akka" version="1.0.6" targetFramework="net452" />
<package id="Akka.Remote" version="1.0.5" targetFramework="net452" />
<package id="Google.ProtocolBuffers" version="2.4.1.521" targetFramework="net452" />
<package id="Helios" version="1.4.1" targetFramework="net452" />
Expand Down

0 comments on commit 885abbc

Please sign in to comment.