рдпреЛ рдУрдиреНрдЯреЛрд▓рдЬреА рдмреНрд▓рдХрдЪреЗрди рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдкрд╛рдЗрдердирдорд╛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдзрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗ рд╢реИрдХреНрд╖рд┐рдХ рд▓реЗрдЦрд╣рд░реВрдХреЛ рд╢реНрд░реГрдВрдЦрд▓рд╛рдХреЛ рджреЛрд╕реНрд░реЛ рднрд╛рдЧ рд╣реЛред рдЕрдШрд┐рд▓реНрд▓реЛ рд▓реЗрдЦрдорд╛ рд╣рд╛рдореАрд▓реЗ рдЪрд┐рдиреНрдпреМрдВ
рдЖрдЬ рд╣рд╛рдореА рджреЛрд╕реНрд░реЛ рдореЛрдбреНрдпреБрд▓ рдХрд╕рд░реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рднрдиреЗрд░ рдЫрд▓рдлрд▓ рдЧрд░реНрдиреЗрдЫреМрдВ- рднрдгреНрдбрд╛рд░рдг APIред рднрдгреНрдбрд╛рд░рдг рдПрдкреАрдЖрдИрд╕рдБрдЧ рдкрд╛рдБрдЪ рд╕рдореНрдмрдиреНрдзрд┐рдд рдПрдкреАрдЖрдИрд╣рд░реВ рдЫрдиреН рдЬрд╕рд▓реЗ рдмреНрд▓рдХрдЪреЗрдирдорд╛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдзрд╣рд░реВрдорд╛ рдердк, рдореЗрдЯрд╛рдЙрдиреЗ, рд░ рдирд┐рд░рдиреНрддрд░ рднрдгреНрдбрд╛рд░рдгрдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВрд▓рд╛рдИ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред
рддрд▓ рдпреА рдкрд╛рдБрдЪ API рдХреЛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг рдЫ:
рдпреА рдкрд╛рдБрдЪ API рд╣рд░реВ рдХрд╕рд░реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рднрдиреЗрд░ рдирдЬрд┐рдХрдмрд╛рдЯ рд╣реЗрд░реМрдВред
0. рдирдпрд╛рдБ рд╕рдореНрдЭреМрддрд╛ рдЧрд░реМрдВ
1. рдХрд╕рд░реА рднрдгреНрдбрд╛рд░рдг API рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ
GetContext рд░ GetReadOnlyContext
GetContext ╨╕ GetReadOnlyContext рд╣рд╛рд▓рдХреЛ рд╕реНрдорд╛рд░реНрдЯ рд╕рдореНрдЭреМрддрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рднрдПрдХреЛ рд╕рдиреНрджрд░реНрдн рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреБрд╣реЛрд╕реНред рд░рд┐рдЯрд░реНрди рдорд╛рди рд╣рд╛рд▓рдХреЛ рд╕реНрдорд╛рд░реНрдЯ рд╕рдореНрдЭреМрддрд╛ рд╣реНрдпрд╛рд╕рдХреЛ рдЙрд▓реНрдЯреЛ рд╣реЛред рдирд╛рдорд▓реЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдП рдЬрд╕реНрддреИ, GetReadOnlyContext рдкрдвреНрдиреЗ рдорд╛рддреНрд░реИ рд╕рдиреНрджрд░реНрдн рд▓рд┐рдиреНрдЫред рддрд▓рдХреЛ рдЙрджрд╛рд╣рд░рдгрдорд╛, рд░рд┐рдЯрд░реНрди рдорд╛рди рдорд╛рдерд┐рд▓реНрд▓реЛ рджрд╛рдпрд╛рдБ рдХреБрдирд╛рдорд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдЕрдиреБрдмрдВрдз рд╣реНрдпрд╛рд╕рдХреЛ рдЙрд▓реНрдЯреЛ рд╣реЛред
рд░рд╛рдЦреНрди
рд╕рдорд╛рд░реЛрд╣ рд░рд╛рдЦреНрди рдПрдХ рд╢рдмреНрджрдХреЛрд╢ рдХреЛ рд░реВрдк рдорд╛ blockchain рдорд╛ рдбрд╛рдЯрд╛ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрди рдЬрд┐рдореНрдореЗрд╡рд╛рд░ рдЫред рджреЗрдЦрд╛рдЗрдП рдЕрдиреБрд╕рд╛рд░, рд░рд╛рдЦреНрди рддреАрди рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рд╣рд░реВ рд▓рд┐рдиреНрдЫред GetContext рд╣рд╛рд▓ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдзрдХреЛ рд╕рдиреНрджрд░реНрдн рд▓рд┐рдиреНрдЫ, рдХреБрдЮреНрдЬреА рдбреЗрдЯрд╛ рдмрдЪрдд рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрдиреЗ рдХреБрдЮреНрдЬреАрдХреЛ рдорд╛рди рд╣реЛ, рд░ рдореВрд▓реНрдп рдмрдЪрдд рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛рдХреЛ рдореВрд▓реНрдп рд╣реЛред рдиреЛрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН рдХрд┐ рдпрджрд┐ рдХреБрдЮреНрдЬреАрдХреЛ рдорд╛рди рдкрд╣рд┐рд▓реЗ рдиреИ рд╕реНрдЯреЛрд░рдорд╛ рдЫ рднрдиреЗ, рдкреНрд░рдХрд╛рд░реНрдпрд▓реЗ рдпрд╕рдХреЛ рд╕рдореНрдмрдиреНрдзрд┐рдд рдорд╛рди рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реНрдиреЗрдЫред
рдкреНрд░рд╛рдкреНрдд
рд╕рдорд╛рд░реЛрд╣ рдкреНрд░рд╛рдкреНрдд рдХреБрдЮреНрдЬреА рдорд╛рди рдорд╛рд░реНрдлрдд рд╣рд╛рд▓рдХреЛ рдмреНрд▓рдХрдЪреЗрдирдорд╛ рдбрд╛рдЯрд╛ рдкрдвреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдЬрд┐рдореНрдореЗрд╡рд╛рд░ рдЫред рддрд▓рдХреЛ рдЙрджрд╛рд╣рд░рдгрдорд╛, рддрдкрд╛рдИрдВрд▓реЗ рдкреНрд░рдХрд╛рд░реНрдп рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрди рджрд╛рдпрд╛рдБрддрд┐рд░рдХреЛ рд╡рд┐рдХрд▓реНрдк рдкреНрдпрд╛рдирд▓рдорд╛ рдХреБрдЮреНрдЬреА рдорд╛рди рднрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рдмреНрд▓рдХрдЪреЗрдирдорд╛ рд░рд╣реЗрдХреЛ рдХреБрдЮреНрдЬреА рдорд╛рдирд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдбрд╛рдЯрд╛ рдкрдвреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред
рдореЗрдЯрд╛рдЙрди
рд╕рдорд╛рд░реЛрд╣ рдореЗрдЯрд╛рдЙрди рдХреБрдЮреНрдЬреА рдорд╛рди рдорд╛рд░реНрдлрдд рдмреНрд▓рдХрдЪреЗрдирдорд╛ рдбрд╛рдЯрд╛ рдореЗрдЯрд╛рдЙрди рдЬрд┐рдореНрдореЗрд╡рд╛рд░ рдЫред рддрд▓рдХреЛ рдЙрджрд╛рд╣рд░рдгрдорд╛, рддрдкрд╛рдИрдВрд▓реЗ рджрд╛рдпрд╛рдБрддрд┐рд░рдХреЛ рд╡рд┐рдХрд▓реНрдк рдкреНрдпрд╛рдирд▓рдорд╛ рдХрд╛рд░реНрдпрдХреЛ рд▓рд╛рдЧрд┐ рдХреБрдЮреНрдЬреА рдорд╛рди рднрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рдмреНрд▓рдХрдЪреЗрдирдорд╛ рд░рд╣реЗрдХреЛ рдХреБрдЮреНрдЬреА рдорд╛рдирд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдбрд╛рдЯрд╛ рдореЗрдЯрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред
2. рднрдгреНрдбрд╛рд░рдг API рдХреЛрдб рдЙрджрд╛рд╣рд░рдг
рддрд▓рдХреЛ рдХреЛрдбрд▓реЗ рдкрд╛рдБрдЪ API рд╣рд░реВрдХреЛ рдкреНрд░рдпреЛрдЧрдХреЛ рд╡рд┐рд╕реНрддреГрдд рдЙрджрд╛рд╣рд░рдг рджрд┐рдиреНрдЫ: GetContext, Get, Put, Delete рд░ GetReadOnlyContextред рддрдкрд╛рдИрдВ API рдбрд╛рдЯрд╛ рдЪрд▓рд╛рдЙрди рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ
from ontology.interop.System.Storage import GetContext, Get, Put, Delete, GetReadOnlyContext
from ontology.interop.System.Runtime import Notify
def Main(operation,args):
if operation == 'get_sc':
return get_sc()
if operation == 'get_read_only_sc':
return get_read_only_sc()
if operation == 'get_data':
key=args[0]
return get_data(key)
if operation == 'save_data':
key=args[0]
value=args[1]
return save_data(key, value)
if operation == 'delete_data':
key=args[0]
return delete_data(key)
return False
def get_sc():
return GetContext()
def get_read_only_sc():
return GetReadOnlyContext()
def get_data(key):
sc=GetContext()
data=Get(sc,key)
return data
def save_data(key, value):
sc=GetContext()
Put(sc,key,value)
def delete_data(key):
sc=GetContext()
Delete(sc,key)
рдкрдЫрд┐рд╢рдмреНрдж
рдмреНрд▓рдХрдЪреЗрди рднрдгреНрдбрд╛рд░рдг рд╕рдореНрдкреВрд░реНрдг рдмреНрд▓рдХрдЪреЗрди рдкреНрд░рдгрд╛рд▓реАрдХреЛ рдореВрд▓ рд╣реЛред Ontology рднрдгреНрдбрд╛рд░рдг API рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рд░ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛-рдЕрдиреБрдХреВрд▓ рдЫред
рдЕрд░реНрдХреЛрддрд░реНрдл, рднрдгреНрдбрд╛рд░рдг рднрдиреЗрдХреЛ рд╣реНрдпрд╛рдХрд░ рдЖрдХреНрд░рдордгрд╣рд░реВрдХреЛ рдХреЗрдиреНрджреНрд░рдмрд┐рдиреНрджреБ рд╣реЛ, рдЬрд╕реНрддреИ рд╣рд╛рдореАрд▓реЗ рдЕрдШрд┐рд▓реНрд▓реЛ рд▓реЗрдЦрд╣рд░реВ рдордзреНрдпреЗ рдПрдЙрдЯрд╛рдорд╛ рдЙрд▓реНрд▓реЗрдЦ рдЧрд░реЗрдХрд╛ рд╕реБрд░рдХреНрд╖рд╛ рдЦрддрд░рд╛рд╣рд░реВред
рдЕрд░реНрдХреЛ рд▓реЗрдЦрдорд╛ рд╣рд╛рдореА рдХрд╕рд░реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рднрдиреЗрд░ рдЫрд▓рдлрд▓ рдЧрд░реНрдиреЗрдЫреМрдВ рд░рдирдЯрд╛рдЗрдо API.
рд▓реЗрдЦ рд╡рд┐рд╢реЗрд╖ рдЧрд░реА OntologyRussia рдХреЛ рд▓рд╛рдЧрд┐ Hashrate & Shares рдХреЛ рд╕рдореНрдкрд╛рджрдХрд╣рд░реБ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд╡рд╛рдж рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред
рд░реБрдиреБ
рддрдкрд╛рдИрдВ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛ рд╣реБрдиреБрд╣реБрдиреНрдЫ? рд╣рд╛рдореНрд░реЛ рдкреНрд░рд╛рд╡рд┐рдзрд┐рдХ рд╕рдореБрджрд╛рдпрдорд╛ рд╕рд╛рдореЗрд▓ рд╣реБрдиреБрд╣реЛрд╕реН
рдУрдиреНрдЯреЛрд▓реЛрдЬреА
рд╕реНрд░реЛрдд: www.habr.com