Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
YottaChain
YTBP
提交
af833613
Y
YTBP
项目概览
YottaChain
/
YTBP
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Y
YTBP
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
af833613
编写于
4月 23, 2018
作者:
K
Khaled Al-Hassanieh
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fixed txn_test_gen_plugin, cleaned proxy
上级
7b1113b5
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
30 addition
and
35 deletion
+30
-35
contracts/proxy/proxy.cpp
contracts/proxy/proxy.cpp
+0
-13
contracts/proxy/proxy.hpp
contracts/proxy/proxy.hpp
+8
-0
plugins/txn_test_gen_plugin/txn_test_gen_plugin.cpp
plugins/txn_test_gen_plugin/txn_test_gen_plugin.cpp
+22
-22
未找到文件。
contracts/proxy/proxy.cpp
浏览文件 @
af833613
...
...
@@ -3,12 +3,9 @@
* @copyright defined in eos/LICENSE.txt
*/
#include <proxy/proxy.hpp>
//#include <eosio.system/eosio.system.hpp>
#include <eosiolib/transaction.hpp>
//#include <eosiolib/currency.hpp>
#include <eosio.token/eosio.token.hpp>
namespace
proxy
{
using
namespace
eosio
;
...
...
@@ -90,13 +87,6 @@ namespace proxy {
using
namespace
proxy
;
using
namespace
eosio
;
struct
transfer_args
{
account_name
from
;
account_name
to
;
asset
quantity
;
string
memo
;
};
extern
"C"
{
/// The apply method implements the dispatch of events to this contract
...
...
@@ -104,9 +94,6 @@ extern "C" {
if
(
code
==
N
(
eosio
))
{
if
(
action
==
N
(
onerror
))
{
apply_onerror
(
receiver
,
deferred_transaction
::
from_current_action
());
}
if
(
action
==
N
(
transfer
)
)
{
// Comment this out for now so that the contract compiles, this will change with refactoring to use eosio.token
// apply_transfer(receiver, code, unpack_action_data<eosiosystem::contract<N(eosio.system)>::currency::transfer_memo>());
}
}
else
if
(
code
==
N
(
eosio
.
token
)
)
{
if
(
action
==
N
(
transfer
)
)
{
...
...
contracts/proxy/proxy.hpp
浏览文件 @
af833613
...
...
@@ -5,6 +5,7 @@
#pragma once
#include <eosiolib/eosio.hpp>
#include <eosiolib/asset.hpp>
namespace
proxy
{
...
...
@@ -25,4 +26,11 @@ namespace proxy {
uint32_t
next_id
=
0
;
};
struct
transfer_args
{
account_name
from
;
account_name
to
;
eosio
::
asset
quantity
;
std
::
string
memo
;
};
}
/// namespace proxy
plugins/txn_test_gen_plugin/txn_test_gen_plugin.cpp
浏览文件 @
af833613
...
...
@@ -23,8 +23,8 @@
#include <WASM/WASM.h>
#include <Runtime/Runtime.h>
#include <
currency/currency
.wast.hpp>
#include <
currency/currency
.abi.hpp>
#include <
eosio.token/eosio.token
.wast.hpp>
#include <
eosio.token/eosio.token
.abi.hpp>
namespace
eosio
{
namespace
detail
{
struct
txn_test_gen_empty
{};
...
...
@@ -74,10 +74,10 @@ struct txn_test_gen_plugin_impl {
void
create_test_accounts
(
const
std
::
string
&
init_name
,
const
std
::
string
&
init_priv_key
)
{
name
newaccountA
(
"txn.test.a"
);
name
newaccountB
(
"txn.test.b"
);
name
newaccountC
(
"
currency
"
);
name
newaccountC
(
"
eosio.token
"
);
name
creator
(
init_name
);
contracts
::
abi_def
currency_abi_def
=
fc
::
json
::
from_string
(
currency
_abi
).
as
<
contracts
::
abi_def
>
();
contracts
::
abi_def
eosio_token_abi_def
=
fc
::
json
::
from_string
(
eosio_token
_abi
).
as
<
contracts
::
abi_def
>
();
chain_controller
&
cc
=
app
().
get_plugin
<
chain_plugin
>
().
chain
();
chain
::
chain_id_type
chainid
;
...
...
@@ -112,7 +112,7 @@ struct txn_test_gen_plugin_impl {
trx
.
actions
.
emplace_back
(
vector
<
chain
::
permission_level
>
{{
creator
,
"active"
}},
contracts
::
newaccount
{
creator
,
newaccountB
,
owner_auth
,
active_auth
,
recovery_auth
});
}
//create "
currency
" account
//create "
eosio.token
" account
{
auto
owner_auth
=
eosio
::
chain
::
authority
{
1
,
{{
txn_text_receiver_C_pub_key
,
1
}},
{}};
auto
active_auth
=
eosio
::
chain
::
authority
{
1
,
{{
txn_text_receiver_C_pub_key
,
1
}},
{}};
...
...
@@ -127,11 +127,11 @@ struct txn_test_gen_plugin_impl {
cc
.
push_transaction
(
packed_transaction
(
trx
));
}
//set
currency
contract & initialize it
//set
eosio.token
contract & initialize it
{
signed_transaction
trx
;
vector
<
uint8_t
>
wasm
=
wast_to_wasm
(
std
::
string
(
currency
_wast
));
vector
<
uint8_t
>
wasm
=
wast_to_wasm
(
std
::
string
(
eosio_token
_wast
));
contracts
::
setcode
handler
;
handler
.
account
=
newaccountC
;
...
...
@@ -142,42 +142,42 @@ struct txn_test_gen_plugin_impl {
{
contracts
::
setabi
handler
;
handler
.
account
=
newaccountC
;
handler
.
abi
=
currency
_abi_def
;
handler
.
abi
=
eosio_token
_abi_def
;
trx
.
actions
.
emplace_back
(
vector
<
chain
::
permission_level
>
{{
newaccountC
,
"active"
}},
handler
);
}
abi_serializer
currency_serializer
(
currency
_abi_def
);
abi_serializer
eosio_token_serializer
(
eosio_token
_abi_def
);
{
action
act
;
act
.
account
=
N
(
currency
);
act
.
account
=
N
(
eosio
.
token
);
act
.
name
=
N
(
create
);
act
.
authorization
=
vector
<
permission_level
>
{{
newaccountC
,
config
::
active_name
}};
act
.
data
=
currency_serializer
.
variant_to_binary
(
"create"
,
fc
::
json
::
from_string
(
"{
\"
issuer
\"
:
\"
currency
\"
,
\"
maximum_supply
\"
:
\"
1000000000.0000 CUR
\"
,
\"
can_freeze
\"
:0,
\"
can_recall
\"
:0,
\"
can_whitelist
\"
:0}}"
));
act
.
data
=
eosio_token_serializer
.
variant_to_binary
(
"create"
,
fc
::
json
::
from_string
(
"{
\"
issuer
\"
:
\"
eosio.token
\"
,
\"
maximum_supply
\"
:
\"
1000000000.0000 CUR
\"
,
\"
can_freeze
\"
:0,
\"
can_recall
\"
:0,
\"
can_whitelist
\"
:0}}"
));
trx
.
actions
.
push_back
(
act
);
}
{
action
act
;
act
.
account
=
N
(
currency
);
act
.
account
=
N
(
eosio
.
token
);
act
.
name
=
N
(
issue
);
act
.
authorization
=
vector
<
permission_level
>
{{
newaccountC
,
config
::
active_name
}};
act
.
data
=
currency_serializer
.
variant_to_binary
(
"issue"
,
fc
::
json
::
from_string
(
"{
\"
to
\"
:
\"
currency
\"
,
\"
quantity
\"
:
\"
600.0000 CUR
\"
,
\"
memo
\"
:
\"\"
}"
));
act
.
data
=
eosio_token_serializer
.
variant_to_binary
(
"issue"
,
fc
::
json
::
from_string
(
"{
\"
to
\"
:
\"
eosio.token
\"
,
\"
quantity
\"
:
\"
600.0000 CUR
\"
,
\"
memo
\"
:
\"\"
}"
));
trx
.
actions
.
push_back
(
act
);
}
{
action
act
;
act
.
account
=
N
(
currency
);
act
.
account
=
N
(
eosio
.
token
);
act
.
name
=
N
(
transfer
);
act
.
authorization
=
vector
<
permission_level
>
{{
newaccountC
,
config
::
active_name
}};
act
.
data
=
currency_serializer
.
variant_to_binary
(
"transfer"
,
fc
::
json
::
from_string
(
"{
\"
from
\"
:
\"
currency
\"
,
\"
to
\"
:
\"
txn.test.a
\"
,
\"
quantity
\"
:
\"
200.0000 CUR
\"
,
\"
memo
\"
:
\"\"
}"
));
act
.
data
=
eosio_token_serializer
.
variant_to_binary
(
"transfer"
,
fc
::
json
::
from_string
(
"{
\"
from
\"
:
\"
eosio.token
\"
,
\"
to
\"
:
\"
txn.test.a
\"
,
\"
quantity
\"
:
\"
200.0000 CUR
\"
,
\"
memo
\"
:
\"\"
}"
));
trx
.
actions
.
push_back
(
act
);
}
{
action
act
;
act
.
account
=
N
(
currency
);
act
.
account
=
N
(
eosio
.
token
);
act
.
name
=
N
(
transfer
);
act
.
authorization
=
vector
<
permission_level
>
{{
newaccountC
,
config
::
active_name
}};
act
.
data
=
currency_serializer
.
variant_to_binary
(
"transfer"
,
fc
::
json
::
from_string
(
"{
\"
from
\"
:
\"
currency
\"
,
\"
to
\"
:
\"
txn.test.b
\"
,
\"
quantity
\"
:
\"
200.0000 CUR
\"
,
\"
memo
\"
:
\"\"
}"
));
act
.
data
=
eosio_token_serializer
.
variant_to_binary
(
"transfer"
,
fc
::
json
::
from_string
(
"{
\"
from
\"
:
\"
eosio.token
\"
,
\"
to
\"
:
\"
txn.test.b
\"
,
\"
quantity
\"
:
\"
200.0000 CUR
\"
,
\"
memo
\"
:
\"\"
}"
));
trx
.
actions
.
push_back
(
act
);
}
...
...
@@ -202,15 +202,15 @@ struct txn_test_gen_plugin_impl {
running
=
true
;
//create the actions here
act_a_to_b
.
account
=
N
(
currency
);
act_a_to_b
.
account
=
N
(
eosio
.
token
);
act_a_to_b
.
name
=
N
(
transfer
);
act_a_to_b
.
authorization
=
vector
<
permission_level
>
{{
name
(
"txn.test.a"
),
config
::
active_name
}};
act_a_to_b
.
data
=
currency
_serializer
.
variant_to_binary
(
"transfer"
,
fc
::
json
::
from_string
(
fc
::
format_string
(
"{
\"
from
\"
:
\"
txn.test.a
\"
,
\"
to
\"
:
\"
txn.test.b
\"
,
\"
quantity
\"
:
\"
1.0000 CUR
\"
,
\"
memo
\"
:
\"
${l}
\"
}"
,
fc
::
mutable_variant_object
()(
"l"
,
salt
))));
act_a_to_b
.
data
=
eosio_token
_serializer
.
variant_to_binary
(
"transfer"
,
fc
::
json
::
from_string
(
fc
::
format_string
(
"{
\"
from
\"
:
\"
txn.test.a
\"
,
\"
to
\"
:
\"
txn.test.b
\"
,
\"
quantity
\"
:
\"
1.0000 CUR
\"
,
\"
memo
\"
:
\"
${l}
\"
}"
,
fc
::
mutable_variant_object
()(
"l"
,
salt
))));
act_b_to_a
.
account
=
N
(
currency
);
act_b_to_a
.
account
=
N
(
eosio
.
token
);
act_b_to_a
.
name
=
N
(
transfer
);
act_b_to_a
.
authorization
=
vector
<
permission_level
>
{{
name
(
"txn.test.b"
),
config
::
active_name
}};
act_b_to_a
.
data
=
currency
_serializer
.
variant_to_binary
(
"transfer"
,
fc
::
json
::
from_string
(
fc
::
format_string
(
"{
\"
from
\"
:
\"
txn.test.b
\"
,
\"
to
\"
:
\"
txn.test.a
\"
,
\"
quantity
\"
:
\"
1.0000 CUR
\"
,
\"
memo
\"
:
\"
${l}
\"
}"
,
fc
::
mutable_variant_object
()(
"l"
,
salt
))));
act_b_to_a
.
data
=
eosio_token
_serializer
.
variant_to_binary
(
"transfer"
,
fc
::
json
::
from_string
(
fc
::
format_string
(
"{
\"
from
\"
:
\"
txn.test.b
\"
,
\"
to
\"
:
\"
txn.test.a
\"
,
\"
quantity
\"
:
\"
1.0000 CUR
\"
,
\"
memo
\"
:
\"
${l}
\"
}"
,
fc
::
mutable_variant_object
()(
"l"
,
salt
))));
timer_timeout
=
period
;
batch
=
batch_size
/
2
;
...
...
@@ -310,7 +310,7 @@ struct txn_test_gen_plugin_impl {
int32_t
txn_reference_block_lag
;
abi_serializer
currency_serializer
=
fc
::
json
::
from_string
(
currency
_abi
).
as
<
contracts
::
abi_def
>
();
abi_serializer
eosio_token_serializer
=
fc
::
json
::
from_string
(
eosio_token
_abi
).
as
<
contracts
::
abi_def
>
();
};
txn_test_gen_plugin
::
txn_test_gen_plugin
()
{}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录