mirror of
https://github.com/XRPLF/rippled.git
synced 2025-11-05 03:35:51 +00:00
Transactor refactoring:
- Reorganize transactor source files and VS project - Don't expose Transactor interfaces to anyone but the TransactionEngine - Improve compile times - Begin using Journal
This commit is contained in:
@@ -1223,6 +1223,7 @@
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\ripple_app_pt9.cpp" />
|
||||||
<ClCompile Include="..\..\src\ripple_app\rpc\RPCServerHandler.cpp">
|
<ClCompile Include="..\..\src\ripple_app\rpc\RPCServerHandler.cpp">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
@@ -1295,43 +1296,55 @@
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\AccountSetTransactor.cpp">
|
<ClCompile Include="..\..\src\ripple_app\transactors\AccountSetTransactor.cpp">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\ChangeTransactor.cpp">
|
<ClCompile Include="..\..\src\ripple_app\transactors\ChangeTransactor.cpp">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\OfferCancelTransactor.cpp">
|
<ClCompile Include="..\..\src\ripple_app\transactors\OfferCancelTransactor.cpp">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\OfferCreateTransactor.cpp">
|
<ClCompile Include="..\..\src\ripple_app\transactors\OfferCreateTransactor.cpp">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\PaymentTransactor.cpp">
|
<ClCompile Include="..\..\src\ripple_app\transactors\PaymentTransactor.cpp">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\RegularKeySetTransactor.cpp">
|
<ClCompile Include="..\..\src\ripple_app\transactors\RegularKeySetTransactor.cpp">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TransactionAcquire.cpp">
|
<ClCompile Include="..\..\src\ripple_app\transactors\Transactor.cpp">
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\transactors\TrustSetTransactor.cpp">
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\transactors\WalletAddTransactor.cpp">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
@@ -1343,6 +1356,12 @@
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\tx\TransactionAcquire.cpp">
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TransactionCheck.cpp">
|
<ClCompile Include="..\..\src\ripple_app\tx\TransactionCheck.cpp">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
@@ -1373,30 +1392,12 @@
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\Transactor.cpp">
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TrustSetTransactor.cpp">
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TxQueueEntry.cpp">
|
<ClCompile Include="..\..\src\ripple_app\tx\TxQueueEntry.cpp">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\WalletAddTransactor.cpp">
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\websocket\WSConnection.cpp">
|
<ClCompile Include="..\..\src\ripple_app\websocket\WSConnection.cpp">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
@@ -2540,22 +2541,22 @@
|
|||||||
<ClInclude Include="..\..\src\ripple_app\shamap\SHAMapSyncFilters.h" />
|
<ClInclude Include="..\..\src\ripple_app\shamap\SHAMapSyncFilters.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\shamap\RadixMapTest.h" />
|
<ClInclude Include="..\..\src\ripple_app\shamap\RadixMapTest.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\shamap\SHAMapTreeNode.h" />
|
<ClInclude Include="..\..\src\ripple_app\shamap\SHAMapTreeNode.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\AccountSetTransactor.h" />
|
<ClInclude Include="..\..\src\ripple_app\transactors\AccountSetTransactor.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\ChangeTransactor.h" />
|
<ClInclude Include="..\..\src\ripple_app\transactors\ChangeTransactor.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\OfferCancelTransactor.h" />
|
<ClInclude Include="..\..\src\ripple_app\transactors\OfferCancelTransactor.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\OfferCreateTransactor.h" />
|
<ClInclude Include="..\..\src\ripple_app\transactors\OfferCreateTransactor.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\PaymentTransactor.h" />
|
<ClInclude Include="..\..\src\ripple_app\transactors\PaymentTransactor.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\RegularKeySetTransactor.h" />
|
<ClInclude Include="..\..\src\ripple_app\transactors\RegularKeySetTransactor.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TransactionAcquire.h" />
|
<ClInclude Include="..\..\src\ripple_app\transactors\Transactor.h" />
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\transactors\TrustSetTransactor.h" />
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\transactors\WalletAddTransactor.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\Transaction.h" />
|
<ClInclude Include="..\..\src\ripple_app\tx\Transaction.h" />
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\tx\TransactionAcquire.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TransactionEngine.h" />
|
<ClInclude Include="..\..\src\ripple_app\tx\TransactionEngine.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TransactionMaster.h" />
|
<ClInclude Include="..\..\src\ripple_app\tx\TransactionMaster.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TransactionMeta.h" />
|
<ClInclude Include="..\..\src\ripple_app\tx\TransactionMeta.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TxQueue.h" />
|
<ClInclude Include="..\..\src\ripple_app\tx\TxQueue.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\Transactor.h" />
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TrustSetTransactor.h" />
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TxQueueEntry.h" />
|
<ClInclude Include="..\..\src\ripple_app\tx\TxQueueEntry.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\WalletAddTransactor.h" />
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\websocket\WSConnection.h" />
|
<ClInclude Include="..\..\src\ripple_app\websocket\WSConnection.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\websocket\WSDoor.h" />
|
<ClInclude Include="..\..\src\ripple_app\websocket\WSDoor.h" />
|
||||||
<ClInclude Include="..\..\src\ripple_app\websocket\WSServerHandler.h" />
|
<ClInclude Include="..\..\src\ripple_app\websocket\WSServerHandler.h" />
|
||||||
|
|||||||
@@ -316,6 +316,9 @@
|
|||||||
<Filter Include="[2] Old Ripple\ripple_overlay\impl">
|
<Filter Include="[2] Old Ripple\ripple_overlay\impl">
|
||||||
<UniqueIdentifier>{0ff855ac-5038-4b16-a324-ba85d782c0e2}</UniqueIdentifier>
|
<UniqueIdentifier>{0ff855ac-5038-4b16-a324-ba85d782c0e2}</UniqueIdentifier>
|
||||||
</Filter>
|
</Filter>
|
||||||
|
<Filter Include="[2] Old Ripple\ripple_app\transactors">
|
||||||
|
<UniqueIdentifier>{dcb7c75c-4f1d-486c-8079-52dc43644ae6}</UniqueIdentifier>
|
||||||
|
</Filter>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\..\src\ripple_basics\containers\RangeSet.cpp">
|
<ClCompile Include="..\..\src\ripple_basics\containers\RangeSet.cpp">
|
||||||
@@ -747,51 +750,6 @@
|
|||||||
<ClCompile Include="..\..\src\ripple_app\consensus\DisputedTx.cpp">
|
<ClCompile Include="..\..\src\ripple_app\consensus\DisputedTx.cpp">
|
||||||
<Filter>[2] Old Ripple\ripple_app\consensus</Filter>
|
<Filter>[2] Old Ripple\ripple_app\consensus</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\AccountSetTransactor.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\ChangeTransactor.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\OfferCancelTransactor.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\OfferCreateTransactor.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\PaymentTransactor.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\RegularKeySetTransactor.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TransactionAcquire.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\Transaction.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TransactionCheck.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TransactionEngine.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TransactionMaster.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TransactionMeta.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\Transactor.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TrustSetTransactor.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\WalletAddTransactor.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\main\RippleMain.cpp">
|
<ClCompile Include="..\..\src\ripple_app\main\RippleMain.cpp">
|
||||||
<Filter>[2] Old Ripple\ripple_app\main</Filter>
|
<Filter>[2] Old Ripple\ripple_app\main</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -849,12 +807,6 @@
|
|||||||
<ClCompile Include="..\..\src\ripple_app\misc\ProofOfWork.cpp">
|
<ClCompile Include="..\..\src\ripple_app\misc\ProofOfWork.cpp">
|
||||||
<Filter>[2] Old Ripple\ripple_app\misc</Filter>
|
<Filter>[2] Old Ripple\ripple_app\misc</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TxQueue.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\ripple_app\tx\TxQueueEntry.cpp">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\protobuf_core.cpp">
|
<ClCompile Include="..\..\src\protobuf_core.cpp">
|
||||||
<Filter>[0] Libraries\protobuf</Filter>
|
<Filter>[0] Libraries\protobuf</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -1488,6 +1440,60 @@
|
|||||||
<ClCompile Include="..\..\src\ripple\peerfinder\impl\SlotImp.cpp">
|
<ClCompile Include="..\..\src\ripple\peerfinder\impl\SlotImp.cpp">
|
||||||
<Filter>[1] Ripple\peerfinder\impl</Filter>
|
<Filter>[1] Ripple\peerfinder\impl</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\ripple_app_pt9.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\tx\Transaction.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\tx\TransactionAcquire.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\tx\TransactionCheck.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\tx\TransactionEngine.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\tx\TransactionMaster.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\tx\TransactionMeta.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\tx\TxQueue.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\tx\TxQueueEntry.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\transactors\AccountSetTransactor.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\transactors\ChangeTransactor.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\transactors\OfferCancelTransactor.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\transactors\OfferCreateTransactor.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\transactors\PaymentTransactor.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\transactors\RegularKeySetTransactor.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\transactors\Transactor.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\transactors\TrustSetTransactor.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\ripple_app\transactors\WalletAddTransactor.cpp">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClInclude Include="..\..\src\ripple_basics\containers\RangeSet.h">
|
<ClInclude Include="..\..\src\ripple_basics\containers\RangeSet.h">
|
||||||
@@ -1973,48 +1979,6 @@
|
|||||||
<ClInclude Include="..\..\src\ripple_app\consensus\LedgerConsensus.h">
|
<ClInclude Include="..\..\src\ripple_app\consensus\LedgerConsensus.h">
|
||||||
<Filter>[2] Old Ripple\ripple_app\consensus</Filter>
|
<Filter>[2] Old Ripple\ripple_app\consensus</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\AccountSetTransactor.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\ChangeTransactor.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\OfferCancelTransactor.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\OfferCreateTransactor.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\PaymentTransactor.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\RegularKeySetTransactor.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TransactionAcquire.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\Transaction.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TransactionEngine.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TransactionMaster.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TransactionMeta.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\Transactor.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TrustSetTransactor.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\WalletAddTransactor.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\main\RippleMain.h">
|
<ClInclude Include="..\..\src\ripple_app\main\RippleMain.h">
|
||||||
<Filter>[2] Old Ripple\ripple_app\main</Filter>
|
<Filter>[2] Old Ripple\ripple_app\main</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -2063,27 +2027,18 @@
|
|||||||
<ClInclude Include="..\..\src\ripple_data\protocol\BuildInfo.h">
|
<ClInclude Include="..\..\src\ripple_data\protocol\BuildInfo.h">
|
||||||
<Filter>[1] Ripple\ripple_data\protocol</Filter>
|
<Filter>[1] Ripple\ripple_data\protocol</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\ripple_net\basics\RippleSSLContext.h">
|
|
||||||
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_net\basics\HTTPRequest.h">
|
<ClInclude Include="..\..\src\ripple_net\basics\HTTPRequest.h">
|
||||||
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\ripple_net\basics\HTTPClient.h">
|
<ClInclude Include="..\..\src\ripple_net\basics\HTTPClient.h">
|
||||||
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\ripple_net\basics\MultiSocket.h">
|
|
||||||
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_net\basics\RPCServer.h">
|
<ClInclude Include="..\..\src\ripple_net\basics\RPCServer.h">
|
||||||
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\ripple_net\basics\SNTPClient.h">
|
<ClInclude Include="..\..\src\ripple_net\basics\SNTPClient.h">
|
||||||
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\ripple_net\basics\impl\MultiSocketType.h">
|
|
||||||
<Filter>[1] Ripple\ripple_net\basics\impl</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_net\basics\RPCDoor.h">
|
<ClInclude Include="..\..\src\ripple_net\basics\RPCDoor.h">
|
||||||
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
<Filter>[1] Ripple\ripple_net\basics</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -2120,12 +2075,6 @@
|
|||||||
<ClInclude Include="..\..\src\ripple_app\misc\ProofOfWorkFactory.h">
|
<ClInclude Include="..\..\src\ripple_app\misc\ProofOfWorkFactory.h">
|
||||||
<Filter>[2] Old Ripple\ripple_app\misc</Filter>
|
<Filter>[2] Old Ripple\ripple_app\misc</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TxQueue.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\tx\TxQueueEntry.h">
|
|
||||||
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\ripple_app\misc\Validations.h">
|
<ClInclude Include="..\..\src\ripple_app\misc\Validations.h">
|
||||||
<Filter>[2] Old Ripple\ripple_app\misc</Filter>
|
<Filter>[2] Old Ripple\ripple_app\misc</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -3051,6 +3000,54 @@
|
|||||||
<ClInclude Include="..\..\src\ripple\peerfinder\impl\StoreSqdb.h">
|
<ClInclude Include="..\..\src\ripple\peerfinder\impl\StoreSqdb.h">
|
||||||
<Filter>[1] Ripple\peerfinder\impl</Filter>
|
<Filter>[1] Ripple\peerfinder\impl</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\tx\Transaction.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\tx\TransactionAcquire.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\tx\TransactionEngine.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\tx\TransactionMaster.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\tx\TransactionMeta.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\tx\TxQueue.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\tx\TxQueueEntry.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\tx</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\transactors\AccountSetTransactor.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\transactors\ChangeTransactor.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\transactors\OfferCancelTransactor.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\transactors\OfferCreateTransactor.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\transactors\PaymentTransactor.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\transactors\RegularKeySetTransactor.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\transactors\Transactor.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\transactors\TrustSetTransactor.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\ripple_app\transactors\WalletAddTransactor.h">
|
||||||
|
<Filter>[2] Old Ripple\ripple_app\transactors</Filter>
|
||||||
|
</ClInclude>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<CustomBuild Include="..\..\src\ripple_data\protocol\ripple.proto">
|
<CustomBuild Include="..\..\src\ripple_data\protocol\ripple.proto">
|
||||||
|
|||||||
@@ -207,6 +207,7 @@ COMPILED_FILES.extend([
|
|||||||
'src/ripple_app/ripple_app_pt6.cpp',
|
'src/ripple_app/ripple_app_pt6.cpp',
|
||||||
'src/ripple_app/ripple_app_pt7.cpp',
|
'src/ripple_app/ripple_app_pt7.cpp',
|
||||||
'src/ripple_app/ripple_app_pt8.cpp',
|
'src/ripple_app/ripple_app_pt8.cpp',
|
||||||
|
'src/ripple_app/ripple_app_pt9.cpp',
|
||||||
'src/ripple_basics/ripple_basics.cpp',
|
'src/ripple_basics/ripple_basics.cpp',
|
||||||
'src/ripple_core/ripple_core.cpp',
|
'src/ripple_core/ripple_core.cpp',
|
||||||
'src/ripple_data/ripple_data.cpp',
|
'src/ripple_data/ripple_data.cpp',
|
||||||
|
|||||||
@@ -126,15 +126,11 @@ namespace ripple {
|
|||||||
#include "main/Application.h"
|
#include "main/Application.h"
|
||||||
namespace ripple {
|
namespace ripple {
|
||||||
#include "ledger/OrderBookDB.h"
|
#include "ledger/OrderBookDB.h"
|
||||||
#include "tx/Transactor.h"
|
|
||||||
#include "tx/ChangeTransactor.h"
|
|
||||||
#include "tx/TransactionAcquire.h"
|
#include "tx/TransactionAcquire.h"
|
||||||
#include "consensus/DisputedTx.h"
|
#include "consensus/DisputedTx.h"
|
||||||
#include "consensus/LedgerConsensus.h"
|
#include "consensus/LedgerConsensus.h"
|
||||||
#include "ledger/LedgerTiming.h"
|
#include "ledger/LedgerTiming.h"
|
||||||
#include "misc/Offer.h"
|
#include "misc/Offer.h"
|
||||||
#include "tx/OfferCancelTransactor.h"
|
|
||||||
#include "tx/OfferCreateTransactor.h"
|
|
||||||
#include "paths/RippleLineCache.h"
|
#include "paths/RippleLineCache.h"
|
||||||
#include "paths/PathRequest.h"
|
#include "paths/PathRequest.h"
|
||||||
#include "paths/PathRequests.h"
|
#include "paths/PathRequests.h"
|
||||||
@@ -143,12 +139,7 @@ namespace ripple {
|
|||||||
#include "paths/PathState.h"
|
#include "paths/PathState.h"
|
||||||
#include "paths/RippleCalc.h"
|
#include "paths/RippleCalc.h"
|
||||||
#include "paths/Pathfinder.h"
|
#include "paths/Pathfinder.h"
|
||||||
#include "tx/PaymentTransactor.h"
|
|
||||||
#include "tx/RegularKeySetTransactor.h"
|
|
||||||
#include "paths/RippleState.h"
|
#include "paths/RippleState.h"
|
||||||
#include "tx/AccountSetTransactor.h"
|
|
||||||
#include "tx/TrustSetTransactor.h"
|
|
||||||
#include "tx/WalletAddTransactor.h"
|
|
||||||
// VFALCO NOTE These contracts files are bunk
|
// VFALCO NOTE These contracts files are bunk
|
||||||
#include "contracts/ScriptData.h"
|
#include "contracts/ScriptData.h"
|
||||||
#include "contracts/Contract.h"
|
#include "contracts/Contract.h"
|
||||||
|
|||||||
@@ -31,12 +31,10 @@ namespace ripple {
|
|||||||
#include "shamap/SHAMapMissingNode.cpp"
|
#include "shamap/SHAMapMissingNode.cpp"
|
||||||
|
|
||||||
#include "misc/AccountItem.cpp"
|
#include "misc/AccountItem.cpp"
|
||||||
#include "tx/AccountSetTransactor.cpp"
|
|
||||||
#include "misc/CanonicalTXSet.cpp"
|
#include "misc/CanonicalTXSet.cpp"
|
||||||
#include "ledger/LedgerProposal.cpp"
|
#include "ledger/LedgerProposal.cpp"
|
||||||
#include "main/LoadManager.cpp"
|
#include "main/LoadManager.cpp"
|
||||||
#include "misc/NicknameState.cpp"
|
#include "misc/NicknameState.cpp"
|
||||||
#include "tx/OfferCancelTransactor.cpp"
|
|
||||||
#include "ledger/OrderBookDB.cpp"
|
#include "ledger/OrderBookDB.cpp"
|
||||||
|
|
||||||
#include "data/Database.cpp"
|
#include "data/Database.cpp"
|
||||||
|
|||||||
@@ -30,7 +30,6 @@ namespace ripple
|
|||||||
#include "shamap/SHAMapTreeNode.cpp"
|
#include "shamap/SHAMapTreeNode.cpp"
|
||||||
#include "misc/AccountItems.cpp"
|
#include "misc/AccountItems.cpp"
|
||||||
#include "misc/AccountState.cpp"
|
#include "misc/AccountState.cpp"
|
||||||
#include "tx/ChangeTransactor.cpp"
|
|
||||||
#include "contracts/Contract.cpp"
|
#include "contracts/Contract.cpp"
|
||||||
#include "contracts/Operation.cpp"
|
#include "contracts/Operation.cpp"
|
||||||
#include "contracts/ScriptData.cpp"
|
#include "contracts/ScriptData.cpp"
|
||||||
|
|||||||
@@ -27,8 +27,9 @@
|
|||||||
|
|
||||||
#include <fstream> // for UniqueNodeList.cpp
|
#include <fstream> // for UniqueNodeList.cpp
|
||||||
|
|
||||||
namespace ripple
|
#include "transactors/Transactor.h"
|
||||||
{
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
#include "paths/RippleState.cpp"
|
#include "paths/RippleState.cpp"
|
||||||
|
|
||||||
@@ -36,14 +37,10 @@ namespace ripple
|
|||||||
|
|
||||||
#include "ledger/InboundLedger.cpp"
|
#include "ledger/InboundLedger.cpp"
|
||||||
|
|
||||||
#include "tx/PaymentTransactor.cpp"
|
|
||||||
#include "tx/RegularKeySetTransactor.cpp"
|
|
||||||
#include "tx/TransactionCheck.cpp"
|
#include "tx/TransactionCheck.cpp"
|
||||||
#include "tx/TransactionMaster.cpp"
|
#include "tx/TransactionMaster.cpp"
|
||||||
#include "tx/TrustSetTransactor.cpp"
|
|
||||||
#include "tx/Transaction.cpp"
|
#include "tx/Transaction.cpp"
|
||||||
#include "tx/TransactionEngine.cpp"
|
#include "tx/TransactionEngine.cpp"
|
||||||
#include "tx/TransactionMeta.cpp"
|
#include "tx/TransactionMeta.cpp"
|
||||||
#include "tx/Transactor.cpp"
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,7 +39,5 @@ namespace ripple {
|
|||||||
#include "ledger/AcceptedLedgerTx.cpp"
|
#include "ledger/AcceptedLedgerTx.cpp"
|
||||||
#include "main/LocalCredentials.cpp"
|
#include "main/LocalCredentials.cpp"
|
||||||
#include "misc/Validations.cpp"
|
#include "misc/Validations.cpp"
|
||||||
#include "tx/OfferCreateTransactor.cpp"
|
|
||||||
#include "tx/WalletAddTransactor.cpp"
|
|
||||||
#include "misc/FeeVote.cpp"
|
#include "misc/FeeVote.cpp"
|
||||||
}
|
}
|
||||||
|
|||||||
32
src/ripple_app/ripple_app_pt9.cpp
Normal file
32
src/ripple_app/ripple_app_pt9.cpp
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
/*
|
||||||
|
This file is part of rippled: https://github.com/ripple/rippled
|
||||||
|
Copyright (c) 2012, 2013 Ripple Labs Inc.
|
||||||
|
|
||||||
|
Permission to use, copy, modify, and/or distribute this software for any
|
||||||
|
purpose with or without fee is hereby granted, provided that the above
|
||||||
|
copyright notice and this permission notice appear in all copies.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||||
|
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||||
|
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||||
|
ANY SPECIAL , DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||||
|
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||||
|
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
||||||
|
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
//==============================================================================
|
||||||
|
|
||||||
|
#include "BeastConfig.h"
|
||||||
|
|
||||||
|
#include "ripple_app.h"
|
||||||
|
|
||||||
|
#include "transactors/Transactor.cpp"
|
||||||
|
#include "transactors/ChangeTransactor.cpp"
|
||||||
|
#include "transactors/OfferCancelTransactor.cpp"
|
||||||
|
#include "transactors/OfferCreateTransactor.cpp"
|
||||||
|
#include "transactors/PaymentTransactor.cpp"
|
||||||
|
#include "transactors/RegularKeySetTransactor.cpp"
|
||||||
|
#include "transactors/AccountSetTransactor.cpp"
|
||||||
|
#include "transactors/WalletAddTransactor.cpp"
|
||||||
|
#include "transactors/TrustSetTransactor.cpp"
|
||||||
@@ -17,6 +17,8 @@
|
|||||||
*/
|
*/
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
SETUP_LOG (AccountSetTransactor)
|
SETUP_LOG (AccountSetTransactor)
|
||||||
|
|
||||||
TER AccountSetTransactor::doApply ()
|
TER AccountSetTransactor::doApply ()
|
||||||
@@ -310,4 +312,4 @@ TER AccountSetTransactor::doApply ()
|
|||||||
return tesSUCCESS;
|
return tesSUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
@@ -20,6 +20,8 @@
|
|||||||
#ifndef ACCOUNTSETTRANSACTOR_H
|
#ifndef ACCOUNTSETTRANSACTOR_H
|
||||||
#define ACCOUNTSETTRANSACTOR_H
|
#define ACCOUNTSETTRANSACTOR_H
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
class AccountSetTransactor : public Transactor
|
class AccountSetTransactor : public Transactor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -27,6 +29,7 @@ public:
|
|||||||
|
|
||||||
TER doApply ();
|
TER doApply ();
|
||||||
};
|
};
|
||||||
#endif
|
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -17,6 +17,8 @@
|
|||||||
*/
|
*/
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
SETUP_LOG (ChangeTransactor)
|
SETUP_LOG (ChangeTransactor)
|
||||||
|
|
||||||
TER ChangeTransactor::doApply ()
|
TER ChangeTransactor::doApply ()
|
||||||
@@ -136,3 +138,5 @@ TER ChangeTransactor::applyFee ()
|
|||||||
WriteLog (lsWARNING, ChangeTransactor) << "Fees have been changed";
|
WriteLog (lsWARNING, ChangeTransactor) << "Fees have been changed";
|
||||||
return tesSUCCESS;
|
return tesSUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -17,6 +17,8 @@
|
|||||||
*/
|
*/
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
class ChangeTransactor : public Transactor
|
class ChangeTransactor : public Transactor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -43,4 +45,4 @@ private:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
@@ -17,6 +17,8 @@
|
|||||||
*/
|
*/
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
SETUP_LOG (OfferCancelTransactor)
|
SETUP_LOG (OfferCancelTransactor)
|
||||||
|
|
||||||
TER OfferCancelTransactor::doApply ()
|
TER OfferCancelTransactor::doApply ()
|
||||||
@@ -67,4 +69,4 @@ TER OfferCancelTransactor::doApply ()
|
|||||||
return terResult;
|
return terResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
@@ -20,6 +20,8 @@
|
|||||||
#ifndef OFFERCANCELTRANSACTOR_H
|
#ifndef OFFERCANCELTRANSACTOR_H
|
||||||
#define OFFERCANCELTRANSACTOR_H
|
#define OFFERCANCELTRANSACTOR_H
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
class OfferCancelTransactor : public Transactor
|
class OfferCancelTransactor : public Transactor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -27,6 +29,7 @@ public:
|
|||||||
|
|
||||||
TER doApply ();
|
TER doApply ();
|
||||||
};
|
};
|
||||||
#endif
|
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -17,6 +17,8 @@
|
|||||||
*/
|
*/
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
SETUP_LOG (OfferCreateTransactor)
|
SETUP_LOG (OfferCreateTransactor)
|
||||||
|
|
||||||
// Make sure an offer is still valid. If not, mark it unfunded.
|
// Make sure an offer is still valid. If not, mark it unfunded.
|
||||||
@@ -749,4 +751,5 @@ TER OfferCreateTransactor::doApply ()
|
|||||||
return terResult;
|
return terResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
|
|
||||||
@@ -20,6 +20,8 @@
|
|||||||
#ifndef __OFFERCREATETRANSACTOR__
|
#ifndef __OFFERCREATETRANSACTOR__
|
||||||
#define __OFFERCREATETRANSACTOR__
|
#define __OFFERCREATETRANSACTOR__
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
class OfferCreateTransactor : public Transactor
|
class OfferCreateTransactor : public Transactor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -57,6 +59,6 @@ private:
|
|||||||
std::set<missingOffer_t> usMissingOffers;
|
std::set<missingOffer_t> usMissingOffers;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
}
|
||||||
|
|
||||||
// vim:ts=4
|
#endif
|
||||||
@@ -17,6 +17,8 @@
|
|||||||
*/
|
*/
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
SETUP_LOG (PaymentTransactor)
|
SETUP_LOG (PaymentTransactor)
|
||||||
|
|
||||||
#define RIPPLE_PATHS_MAX 6
|
#define RIPPLE_PATHS_MAX 6
|
||||||
@@ -262,4 +264,5 @@ TER PaymentTransactor::doApply ()
|
|||||||
return terResult;
|
return terResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
|
|
||||||
@@ -20,6 +20,8 @@
|
|||||||
#ifndef __PAYMENTTRANSACTOR__
|
#ifndef __PAYMENTTRANSACTOR__
|
||||||
#define __PAYMENTTRANSACTOR__
|
#define __PAYMENTTRANSACTOR__
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
class PaymentTransactor : public Transactor
|
class PaymentTransactor : public Transactor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -27,6 +29,7 @@ public:
|
|||||||
|
|
||||||
TER doApply ();
|
TER doApply ();
|
||||||
};
|
};
|
||||||
#endif
|
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -17,6 +17,8 @@
|
|||||||
*/
|
*/
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
SETUP_LOG (RegularKeySetTransactor)
|
SETUP_LOG (RegularKeySetTransactor)
|
||||||
|
|
||||||
uint64 RegularKeySetTransactor::calculateBaseFee ()
|
uint64 RegularKeySetTransactor::calculateBaseFee ()
|
||||||
@@ -68,4 +70,4 @@ TER RegularKeySetTransactor::doApply ()
|
|||||||
return tesSUCCESS;
|
return tesSUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
@@ -20,6 +20,8 @@
|
|||||||
#ifndef REGULARKEYSETTRANSACTOR_H
|
#ifndef REGULARKEYSETTRANSACTOR_H
|
||||||
#define REGULARKEYSETTRANSACTOR_H
|
#define REGULARKEYSETTRANSACTOR_H
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
class RegularKeySetTransactor : public Transactor
|
class RegularKeySetTransactor : public Transactor
|
||||||
{
|
{
|
||||||
uint64 calculateBaseFee ();
|
uint64 calculateBaseFee ();
|
||||||
@@ -28,6 +30,7 @@ public:
|
|||||||
TER checkFee ();
|
TER checkFee ();
|
||||||
TER doApply ();
|
TER doApply ();
|
||||||
};
|
};
|
||||||
#endif
|
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -17,36 +17,57 @@
|
|||||||
*/
|
*/
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
||||||
SETUP_LOG (Transactor)
|
#include "Transactor.h"
|
||||||
|
#include "ChangeTransactor.h"
|
||||||
|
#include "OfferCancelTransactor.h"
|
||||||
|
#include "OfferCreateTransactor.h"
|
||||||
|
#include "PaymentTransactor.h"
|
||||||
|
#include "RegularKeySetTransactor.h"
|
||||||
|
#include "AccountSetTransactor.h"
|
||||||
|
#include "TrustSetTransactor.h"
|
||||||
|
#include "WalletAddTransactor.h"
|
||||||
|
|
||||||
std::unique_ptr<Transactor> Transactor::makeTransactor (const SerializedTransaction& txn, TransactionEngineParams params, TransactionEngine* engine)
|
namespace ripple {
|
||||||
|
|
||||||
|
std::unique_ptr<Transactor> Transactor::makeTransactor (
|
||||||
|
SerializedTransaction const& txn,
|
||||||
|
TransactionEngineParams params,
|
||||||
|
TransactionEngine* engine)
|
||||||
{
|
{
|
||||||
switch (txn.getTxnType ())
|
switch (txn.getTxnType ())
|
||||||
{
|
{
|
||||||
case ttPAYMENT:
|
case ttPAYMENT:
|
||||||
return std::unique_ptr<Transactor> (new PaymentTransactor (txn, params, engine));
|
return std::unique_ptr<Transactor> (
|
||||||
|
new PaymentTransactor (txn, params, engine));
|
||||||
|
|
||||||
case ttACCOUNT_SET:
|
case ttACCOUNT_SET:
|
||||||
return std::unique_ptr<Transactor> (new AccountSetTransactor (txn, params, engine));
|
return std::unique_ptr<Transactor> (
|
||||||
|
new AccountSetTransactor (txn, params, engine));
|
||||||
|
|
||||||
case ttREGULAR_KEY_SET:
|
case ttREGULAR_KEY_SET:
|
||||||
return std::unique_ptr<Transactor> (new RegularKeySetTransactor (txn, params, engine));
|
return std::unique_ptr<Transactor> (
|
||||||
|
new RegularKeySetTransactor (txn, params, engine));
|
||||||
|
|
||||||
case ttTRUST_SET:
|
case ttTRUST_SET:
|
||||||
return std::unique_ptr<Transactor> (new TrustSetTransactor (txn, params, engine));
|
return std::unique_ptr<Transactor> (
|
||||||
|
new TrustSetTransactor (txn, params, engine));
|
||||||
|
|
||||||
case ttOFFER_CREATE:
|
case ttOFFER_CREATE:
|
||||||
return std::unique_ptr<Transactor> (new OfferCreateTransactor (txn, params, engine));
|
return std::unique_ptr<Transactor> (
|
||||||
|
new OfferCreateTransactor (txn, params, engine));
|
||||||
|
|
||||||
case ttOFFER_CANCEL:
|
case ttOFFER_CANCEL:
|
||||||
return std::unique_ptr<Transactor> (new OfferCancelTransactor (txn, params, engine));
|
return std::unique_ptr<Transactor> (
|
||||||
|
new OfferCancelTransactor (txn, params, engine));
|
||||||
|
|
||||||
case ttWALLET_ADD:
|
case ttWALLET_ADD:
|
||||||
return std::unique_ptr<Transactor> (new WalletAddTransactor (txn, params, engine));
|
return std::unique_ptr<Transactor> (
|
||||||
|
new WalletAddTransactor (txn, params, engine));
|
||||||
|
|
||||||
case ttFEATURE:
|
case ttFEATURE:
|
||||||
case ttFEE:
|
case ttFEE:
|
||||||
return std::unique_ptr<Transactor> (new ChangeTransactor (txn, params, engine));
|
return std::unique_ptr<Transactor> (
|
||||||
|
new ChangeTransactor (txn, params, engine));
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return std::unique_ptr<Transactor> ();
|
return std::unique_ptr<Transactor> ();
|
||||||
@@ -54,15 +75,24 @@ std::unique_ptr<Transactor> Transactor::makeTransactor (const SerializedTransact
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Transactor::Transactor (const SerializedTransaction& txn, TransactionEngineParams params, TransactionEngine* engine) : mTxn (txn), mEngine (engine), mParams (params)
|
Transactor::Transactor (
|
||||||
|
SerializedTransaction const& txn,
|
||||||
|
TransactionEngineParams params,
|
||||||
|
TransactionEngine* engine,
|
||||||
|
Journal journal)
|
||||||
|
: mTxn (txn)
|
||||||
|
, mEngine (engine)
|
||||||
|
, mParams (params)
|
||||||
|
, mHasAuthKey (false)
|
||||||
|
, mSigMaster (false)
|
||||||
|
, m_journal (journal)
|
||||||
{
|
{
|
||||||
mHasAuthKey = false;
|
|
||||||
mSigMaster = false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Transactor::calculateFee ()
|
void Transactor::calculateFee ()
|
||||||
{
|
{
|
||||||
mFeeDue = STAmount (mEngine->getLedger ()->scaleFeeLoad (calculateBaseFee (), isSetBit (mParams, tapADMIN)));
|
mFeeDue = STAmount (mEngine->getLedger ()->scaleFeeLoad (
|
||||||
|
calculateBaseFee (), isSetBit (mParams, tapADMIN)));
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64 Transactor::calculateBaseFee ()
|
uint64 Transactor::calculateBaseFee ()
|
||||||
@@ -80,9 +110,8 @@ TER Transactor::payFee ()
|
|||||||
// Only check fee is sufficient when the ledger is open.
|
// Only check fee is sufficient when the ledger is open.
|
||||||
if (isSetBit (mParams, tapOPEN_LEDGER) && saPaid < mFeeDue)
|
if (isSetBit (mParams, tapOPEN_LEDGER) && saPaid < mFeeDue)
|
||||||
{
|
{
|
||||||
WriteLog (lsINFO, Transactor) << boost::str (boost::format ("applyTransaction: Insufficient fee paid: %s/%s")
|
m_journal.info << "Insufficient fee paid: " <<
|
||||||
% saPaid.getText ()
|
saPaid.getText () << "/" << mFeeDue.getText ();
|
||||||
% mFeeDue.getText ());
|
|
||||||
|
|
||||||
return telINSUF_FEE_P;
|
return telINSUF_FEE_P;
|
||||||
}
|
}
|
||||||
@@ -96,10 +125,9 @@ TER Transactor::payFee ()
|
|||||||
// Will only write the account back, if the transaction succeeds.
|
// Will only write the account back, if the transaction succeeds.
|
||||||
if (mSourceBalance < saPaid)
|
if (mSourceBalance < saPaid)
|
||||||
{
|
{
|
||||||
WriteLog (lsINFO, Transactor)
|
m_journal.info << "Insufficient balance:" <<
|
||||||
<< boost::str (boost::format ("applyTransaction: Delay: insufficient balance: balance=%s paid=%s")
|
" balance=" << mSourceBalance.getText () <<
|
||||||
% mSourceBalance.getText ()
|
" paid=" << saPaid.getText ();
|
||||||
% saPaid.getText ());
|
|
||||||
|
|
||||||
return terINSUF_FEE_B;
|
return terINSUF_FEE_B;
|
||||||
}
|
}
|
||||||
@@ -128,13 +156,12 @@ TER Transactor::checkSig ()
|
|||||||
}
|
}
|
||||||
else if (mHasAuthKey)
|
else if (mHasAuthKey)
|
||||||
{
|
{
|
||||||
WriteLog (lsINFO, Transactor) << "applyTransaction: Delay: Not authorized to use account.";
|
m_journal.info << "applyTransaction: Delay: Not authorized to use account.";
|
||||||
|
|
||||||
return tefBAD_AUTH;
|
return tefBAD_AUTH;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
WriteLog (lsINFO, Transactor) << "applyTransaction: Invalid: Not authorized to use account.";
|
m_journal.info << "applyTransaction: Invalid: Not authorized to use account.";
|
||||||
|
|
||||||
return temBAD_AUTH_MASTER;
|
return temBAD_AUTH_MASTER;
|
||||||
}
|
}
|
||||||
@@ -147,13 +174,13 @@ TER Transactor::checkSeq ()
|
|||||||
uint32 t_seq = mTxn.getSequence ();
|
uint32 t_seq = mTxn.getSequence ();
|
||||||
uint32 a_seq = mTxnAccount->getFieldU32 (sfSequence);
|
uint32 a_seq = mTxnAccount->getFieldU32 (sfSequence);
|
||||||
|
|
||||||
WriteLog (lsTRACE, Transactor) << "Aseq=" << a_seq << ", Tseq=" << t_seq;
|
m_journal.trace << "Aseq=" << a_seq << ", Tseq=" << t_seq;
|
||||||
|
|
||||||
if (t_seq != a_seq)
|
if (t_seq != a_seq)
|
||||||
{
|
{
|
||||||
if (a_seq < t_seq)
|
if (a_seq < t_seq)
|
||||||
{
|
{
|
||||||
WriteLog (lsINFO, Transactor) << "applyTransaction: future sequence number";
|
m_journal.info << "apply: transaction has future sequence number";
|
||||||
|
|
||||||
return terPRE_SEQ;
|
return terPRE_SEQ;
|
||||||
}
|
}
|
||||||
@@ -165,7 +192,7 @@ TER Transactor::checkSeq ()
|
|||||||
return tefALREADY;
|
return tefALREADY;
|
||||||
}
|
}
|
||||||
|
|
||||||
WriteLog (lsWARNING, Transactor) << "applyTransaction: past sequence number";
|
m_journal.warning << "apply: transaction has past sequence number";
|
||||||
|
|
||||||
return tefPAST_SEQ;
|
return tefPAST_SEQ;
|
||||||
}
|
}
|
||||||
@@ -198,8 +225,7 @@ TER Transactor::preCheck ()
|
|||||||
|
|
||||||
if (!mTxnAccountID)
|
if (!mTxnAccountID)
|
||||||
{
|
{
|
||||||
WriteLog (lsWARNING, Transactor) << "applyTransaction: bad source id";
|
m_journal.warning << "apply: bad transaction source id";
|
||||||
|
|
||||||
return temBAD_SRC_ACCOUNT;
|
return temBAD_SRC_ACCOUNT;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -216,7 +242,7 @@ TER Transactor::preCheck ()
|
|||||||
if (mTxn.isKnownBad () || (!isSetBit (mParams, tapNO_CHECK_SIGN) && !mTxn.checkSign (mSigningPubKey)))
|
if (mTxn.isKnownBad () || (!isSetBit (mParams, tapNO_CHECK_SIGN) && !mTxn.checkSign (mSigningPubKey)))
|
||||||
{
|
{
|
||||||
mTxn.setBad ();
|
mTxn.setBad ();
|
||||||
WriteLog (lsWARNING, Transactor) << "applyTransaction: Invalid transaction: bad signature";
|
m_journal.warning << "apply: Invalid transaction (bad signature)";
|
||||||
return temINVALID;
|
return temINVALID;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -228,26 +254,29 @@ TER Transactor::preCheck ()
|
|||||||
|
|
||||||
TER Transactor::apply ()
|
TER Transactor::apply ()
|
||||||
{
|
{
|
||||||
TER terResult = tesSUCCESS;
|
TER terResult (preCheck ());
|
||||||
terResult = preCheck ();
|
|
||||||
|
|
||||||
if (terResult != tesSUCCESS) return (terResult);
|
if (terResult != tesSUCCESS)
|
||||||
|
return (terResult);
|
||||||
|
|
||||||
|
// Restructure this to avoid the dependency on LedgerBase::mLock
|
||||||
Ledger::ScopedLockType sl (mEngine->getLedger ()->mLock, __FILE__, __LINE__);
|
Ledger::ScopedLockType sl (mEngine->getLedger ()->mLock, __FILE__, __LINE__);
|
||||||
|
|
||||||
mTxnAccount = mEngine->entryCache (ltACCOUNT_ROOT, Ledger::getAccountRootIndex (mTxnAccountID));
|
mTxnAccount = mEngine->entryCache (ltACCOUNT_ROOT,
|
||||||
|
Ledger::getAccountRootIndex (mTxnAccountID));
|
||||||
calculateFee ();
|
calculateFee ();
|
||||||
|
|
||||||
// Find source account
|
// Find source account
|
||||||
// If are only forwarding, due to resource limitations, we might verifying only some transactions, this would be probabilistic.
|
// If are only forwarding, due to resource limitations, we might verifying
|
||||||
|
// only some transactions, this would be probabilistic.
|
||||||
|
|
||||||
if (!mTxnAccount)
|
if (!mTxnAccount)
|
||||||
{
|
{
|
||||||
if (mustHaveValidAccount ())
|
if (mustHaveValidAccount ())
|
||||||
{
|
{
|
||||||
WriteLog (lsTRACE, Transactor) << boost::str (boost::format ("applyTransaction: Delay transaction: source account does not exist: %s") %
|
m_journal.trace <<
|
||||||
mTxn.getSourceAccount ().humanAccountID ());
|
"apply: delay transaction: source account does not exist " <<
|
||||||
|
mTxn.getSourceAccount ().humanAccountID ();
|
||||||
return terNO_ACCOUNT;
|
return terNO_ACCOUNT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -276,4 +305,4 @@ TER Transactor::apply ()
|
|||||||
return doApply ();
|
return doApply ();
|
||||||
}
|
}
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
@@ -20,17 +20,20 @@
|
|||||||
#ifndef __TRANSACTOR__
|
#ifndef __TRANSACTOR__
|
||||||
#define __TRANSACTOR__
|
#define __TRANSACTOR__
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
class Transactor
|
class Transactor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
typedef boost::shared_ptr<Transactor> pointer;
|
static std::unique_ptr<Transactor> makeTransactor (
|
||||||
|
SerializedTransaction const& txn,
|
||||||
static std::unique_ptr<Transactor> makeTransactor (const SerializedTransaction& txn, TransactionEngineParams params, TransactionEngine* engine);
|
TransactionEngineParams params,
|
||||||
|
TransactionEngine* engine);
|
||||||
|
|
||||||
TER apply ();
|
TER apply ();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
const SerializedTransaction& mTxn;
|
SerializedTransaction const& mTxn;
|
||||||
TransactionEngine* mEngine;
|
TransactionEngine* mEngine;
|
||||||
TransactionEngineParams mParams;
|
TransactionEngineParams mParams;
|
||||||
|
|
||||||
@@ -43,6 +46,8 @@ protected:
|
|||||||
bool mSigMaster;
|
bool mSigMaster;
|
||||||
RippleAddress mSigningPubKey;
|
RippleAddress mSigningPubKey;
|
||||||
|
|
||||||
|
Journal m_journal;
|
||||||
|
|
||||||
virtual TER preCheck ();
|
virtual TER preCheck ();
|
||||||
virtual TER checkSeq ();
|
virtual TER checkSeq ();
|
||||||
virtual TER payFee ();
|
virtual TER payFee ();
|
||||||
@@ -55,7 +60,11 @@ protected:
|
|||||||
virtual TER checkSig ();
|
virtual TER checkSig ();
|
||||||
virtual TER doApply () = 0;
|
virtual TER doApply () = 0;
|
||||||
|
|
||||||
Transactor (const SerializedTransaction& txn, TransactionEngineParams params, TransactionEngine* engine);
|
Transactor (
|
||||||
|
const SerializedTransaction& txn,
|
||||||
|
TransactionEngineParams params,
|
||||||
|
TransactionEngine* engine,
|
||||||
|
Journal journal = Journal ());
|
||||||
|
|
||||||
virtual bool mustHaveValidAccount ()
|
virtual bool mustHaveValidAccount ()
|
||||||
{
|
{
|
||||||
@@ -63,6 +72,6 @@ protected:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
}
|
||||||
|
|
||||||
// vim:ts=4
|
#endif
|
||||||
@@ -17,6 +17,8 @@
|
|||||||
*/
|
*/
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
SETUP_LOG (TrustSetTransactor)
|
SETUP_LOG (TrustSetTransactor)
|
||||||
|
|
||||||
TER TrustSetTransactor::doApply ()
|
TER TrustSetTransactor::doApply ()
|
||||||
@@ -365,4 +367,4 @@ TER TrustSetTransactor::doApply ()
|
|||||||
return terResult;
|
return terResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
@@ -20,6 +20,8 @@
|
|||||||
#ifndef TRUSTSETTRANSACTOR_H
|
#ifndef TRUSTSETTRANSACTOR_H
|
||||||
#define TRUSTSETTRANSACTOR_H
|
#define TRUSTSETTRANSACTOR_H
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
class TrustSetTransactor : public Transactor
|
class TrustSetTransactor : public Transactor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -27,6 +29,7 @@ public:
|
|||||||
|
|
||||||
TER doApply ();
|
TER doApply ();
|
||||||
};
|
};
|
||||||
#endif
|
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -17,6 +17,8 @@
|
|||||||
*/
|
*/
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
SETUP_LOG (WalletAddTransactor)
|
SETUP_LOG (WalletAddTransactor)
|
||||||
|
|
||||||
TER WalletAddTransactor::doApply ()
|
TER WalletAddTransactor::doApply ()
|
||||||
@@ -90,4 +92,4 @@ TER WalletAddTransactor::doApply ()
|
|||||||
return tesSUCCESS;
|
return tesSUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
@@ -20,6 +20,8 @@
|
|||||||
#ifndef WALLETADDTRANSACTOR_H
|
#ifndef WALLETADDTRANSACTOR_H
|
||||||
#define WALLETADDTRANSACTOR_H
|
#define WALLETADDTRANSACTOR_H
|
||||||
|
|
||||||
|
namespace ripple {
|
||||||
|
|
||||||
class WalletAddTransactor : public Transactor
|
class WalletAddTransactor : public Transactor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -27,6 +29,7 @@ public:
|
|||||||
|
|
||||||
TER doApply ();
|
TER doApply ();
|
||||||
};
|
};
|
||||||
#endif
|
|
||||||
|
|
||||||
// vim:ts=4
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -109,119 +109,117 @@ TER TransactionEngine::applyTransaction (const SerializedTransaction& txn, Trans
|
|||||||
|
|
||||||
std::unique_ptr<Transactor> transactor = Transactor::makeTransactor (txn, params, this);
|
std::unique_ptr<Transactor> transactor = Transactor::makeTransactor (txn, params, this);
|
||||||
|
|
||||||
if (transactor.get () != NULL)
|
if (transactor.get () == NULL)
|
||||||
{
|
|
||||||
TER terResult = transactor->apply ();
|
|
||||||
std::string strToken;
|
|
||||||
std::string strHuman;
|
|
||||||
|
|
||||||
transResultInfo (terResult, strToken, strHuman);
|
|
||||||
|
|
||||||
WriteLog (lsINFO, TransactionEngine) << "applyTransaction: terResult=" << strToken << " : " << terResult << " : " << strHuman;
|
|
||||||
|
|
||||||
if (isTesSuccess (terResult))
|
|
||||||
didApply = true;
|
|
||||||
else if (isTecClaim (terResult) && !isSetBit (params, tapRETRY))
|
|
||||||
{
|
|
||||||
// only claim the transaction fee
|
|
||||||
WriteLog (lsDEBUG, TransactionEngine) << "Reprocessing to only claim fee";
|
|
||||||
mNodes.clear ();
|
|
||||||
|
|
||||||
SLE::pointer txnAcct = entryCache (ltACCOUNT_ROOT, Ledger::getAccountRootIndex (txn.getSourceAccount ()));
|
|
||||||
|
|
||||||
if (!txnAcct)
|
|
||||||
terResult = terNO_ACCOUNT;
|
|
||||||
else
|
|
||||||
{
|
|
||||||
uint32 t_seq = txn.getSequence ();
|
|
||||||
uint32 a_seq = txnAcct->getFieldU32 (sfSequence);
|
|
||||||
|
|
||||||
if (a_seq < t_seq)
|
|
||||||
terResult = terPRE_SEQ;
|
|
||||||
else if (a_seq > t_seq)
|
|
||||||
terResult = tefPAST_SEQ;
|
|
||||||
else
|
|
||||||
{
|
|
||||||
STAmount fee = txn.getTransactionFee ();
|
|
||||||
STAmount balance = txnAcct->getFieldAmount (sfBalance);
|
|
||||||
|
|
||||||
if (balance < fee)
|
|
||||||
terResult = terINSUF_FEE_B;
|
|
||||||
else
|
|
||||||
{
|
|
||||||
txnAcct->setFieldAmount (sfBalance, balance - fee);
|
|
||||||
txnAcct->setFieldU32 (sfSequence, t_seq + 1);
|
|
||||||
entryModify (txnAcct);
|
|
||||||
didApply = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
WriteLog (lsDEBUG, TransactionEngine) << "Not applying transaction " << txID;
|
|
||||||
|
|
||||||
if (didApply)
|
|
||||||
{
|
|
||||||
if (!checkInvariants (terResult, txn, params))
|
|
||||||
{
|
|
||||||
WriteLog (lsFATAL, TransactionEngine) << "Transaction violates invariants";
|
|
||||||
WriteLog (lsFATAL, TransactionEngine) << txn.getJson (0);
|
|
||||||
WriteLog (lsFATAL, TransactionEngine) << transToken (terResult) << ": " << transHuman (terResult);
|
|
||||||
WriteLog (lsFATAL, TransactionEngine) << mNodes.getJson (0);
|
|
||||||
didApply = false;
|
|
||||||
terResult = tefINTERNAL;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// Transaction succeeded fully or (retries are not allowed and the transaction could claim a fee)
|
|
||||||
Serializer m;
|
|
||||||
mNodes.calcRawMeta (m, terResult, mTxnSeq++);
|
|
||||||
|
|
||||||
txnWrite ();
|
|
||||||
|
|
||||||
Serializer s;
|
|
||||||
txn.add (s);
|
|
||||||
|
|
||||||
if (isSetBit (params, tapOPEN_LEDGER))
|
|
||||||
{
|
|
||||||
if (!mLedger->addTransaction (txID, s))
|
|
||||||
{
|
|
||||||
WriteLog (lsFATAL, TransactionEngine) << "Tried to add transaction to open ledger that already had it";
|
|
||||||
assert (false);
|
|
||||||
throw std::runtime_error ("Duplicate transaction applied");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (!mLedger->addTransaction (txID, s, m))
|
|
||||||
{
|
|
||||||
WriteLog (lsFATAL, TransactionEngine) << "Tried to add transaction to ledger that already had it";
|
|
||||||
assert (false);
|
|
||||||
throw std::runtime_error ("Duplicate transaction applied to closed ledger");
|
|
||||||
}
|
|
||||||
|
|
||||||
// Charge whatever fee they specified.
|
|
||||||
STAmount saPaid = txn.getTransactionFee ();
|
|
||||||
mLedger->destroyCoins (saPaid.getNValue ());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
mTxnAccount.reset ();
|
|
||||||
mNodes.clear ();
|
|
||||||
|
|
||||||
if (!isSetBit (params, tapOPEN_LEDGER) && isTemMalformed (terResult))
|
|
||||||
{
|
|
||||||
// XXX Malformed or failed transaction in closed ledger must bow out.
|
|
||||||
}
|
|
||||||
|
|
||||||
return terResult;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
WriteLog (lsWARNING, TransactionEngine) << "applyTransaction: Invalid transaction: unknown transaction type";
|
WriteLog (lsWARNING, TransactionEngine) << "applyTransaction: Invalid transaction: unknown transaction type";
|
||||||
return temUNKNOWN;
|
return temUNKNOWN;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TER terResult = transactor->apply ();
|
||||||
|
std::string strToken;
|
||||||
|
std::string strHuman;
|
||||||
|
|
||||||
|
transResultInfo (terResult, strToken, strHuman);
|
||||||
|
|
||||||
|
WriteLog (lsINFO, TransactionEngine) << "applyTransaction: terResult=" << strToken << " : " << terResult << " : " << strHuman;
|
||||||
|
|
||||||
|
if (isTesSuccess (terResult))
|
||||||
|
didApply = true;
|
||||||
|
else if (isTecClaim (terResult) && !isSetBit (params, tapRETRY))
|
||||||
|
{
|
||||||
|
// only claim the transaction fee
|
||||||
|
WriteLog (lsDEBUG, TransactionEngine) << "Reprocessing to only claim fee";
|
||||||
|
mNodes.clear ();
|
||||||
|
|
||||||
|
SLE::pointer txnAcct = entryCache (ltACCOUNT_ROOT, Ledger::getAccountRootIndex (txn.getSourceAccount ()));
|
||||||
|
|
||||||
|
if (!txnAcct)
|
||||||
|
terResult = terNO_ACCOUNT;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
uint32 t_seq = txn.getSequence ();
|
||||||
|
uint32 a_seq = txnAcct->getFieldU32 (sfSequence);
|
||||||
|
|
||||||
|
if (a_seq < t_seq)
|
||||||
|
terResult = terPRE_SEQ;
|
||||||
|
else if (a_seq > t_seq)
|
||||||
|
terResult = tefPAST_SEQ;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
STAmount fee = txn.getTransactionFee ();
|
||||||
|
STAmount balance = txnAcct->getFieldAmount (sfBalance);
|
||||||
|
|
||||||
|
if (balance < fee)
|
||||||
|
terResult = terINSUF_FEE_B;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
txnAcct->setFieldAmount (sfBalance, balance - fee);
|
||||||
|
txnAcct->setFieldU32 (sfSequence, t_seq + 1);
|
||||||
|
entryModify (txnAcct);
|
||||||
|
didApply = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
WriteLog (lsDEBUG, TransactionEngine) << "Not applying transaction " << txID;
|
||||||
|
|
||||||
|
if (didApply)
|
||||||
|
{
|
||||||
|
if (!checkInvariants (terResult, txn, params))
|
||||||
|
{
|
||||||
|
WriteLog (lsFATAL, TransactionEngine) << "Transaction violates invariants";
|
||||||
|
WriteLog (lsFATAL, TransactionEngine) << txn.getJson (0);
|
||||||
|
WriteLog (lsFATAL, TransactionEngine) << transToken (terResult) << ": " << transHuman (terResult);
|
||||||
|
WriteLog (lsFATAL, TransactionEngine) << mNodes.getJson (0);
|
||||||
|
didApply = false;
|
||||||
|
terResult = tefINTERNAL;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Transaction succeeded fully or (retries are not allowed and the transaction could claim a fee)
|
||||||
|
Serializer m;
|
||||||
|
mNodes.calcRawMeta (m, terResult, mTxnSeq++);
|
||||||
|
|
||||||
|
txnWrite ();
|
||||||
|
|
||||||
|
Serializer s;
|
||||||
|
txn.add (s);
|
||||||
|
|
||||||
|
if (isSetBit (params, tapOPEN_LEDGER))
|
||||||
|
{
|
||||||
|
if (!mLedger->addTransaction (txID, s))
|
||||||
|
{
|
||||||
|
WriteLog (lsFATAL, TransactionEngine) << "Tried to add transaction to open ledger that already had it";
|
||||||
|
assert (false);
|
||||||
|
throw std::runtime_error ("Duplicate transaction applied");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (!mLedger->addTransaction (txID, s, m))
|
||||||
|
{
|
||||||
|
WriteLog (lsFATAL, TransactionEngine) << "Tried to add transaction to ledger that already had it";
|
||||||
|
assert (false);
|
||||||
|
throw std::runtime_error ("Duplicate transaction applied to closed ledger");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Charge whatever fee they specified.
|
||||||
|
STAmount saPaid = txn.getTransactionFee ();
|
||||||
|
mLedger->destroyCoins (saPaid.getNValue ());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
mTxnAccount.reset ();
|
||||||
|
mNodes.clear ();
|
||||||
|
|
||||||
|
if (!isSetBit (params, tapOPEN_LEDGER) && isTemMalformed (terResult))
|
||||||
|
{
|
||||||
|
// XXX Malformed or failed transaction in closed ledger must bow out.
|
||||||
|
}
|
||||||
|
|
||||||
|
return terResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
// vim:ts=4
|
// vim:ts=4
|
||||||
|
|||||||
Reference in New Issue
Block a user