type EndnotePrAdapter = class public function Create(_obj: EndnotePr); function Init(); function GetEndnoteById(_key: string); function SetEndnoteById(_key: string; _value: tslobj); private object_: EndnotePr; endnote_hash_: tableArray; end; function EndnotePrAdapter.Create(_obj: EndnotePr); begin object_ := _obj; endnote_hash_ := array(); {self.}Init(); end; function EndnotePrAdapter.Init(); begin elements := object_.Endnotes(); for k,v in elements do endnote_hash_[v.Id] := v; end; function EndnotePrAdapter.GetEndnoteById(_key: string); begin return endnote_hash_[_key]; end; function EndnotePrAdapter.SetEndnoteById(_key: string; _value: tslobj); begin endnote_hash_[_key] := _value; end;