2018-10-05 12:34:31 +02:00
|
|
|
import Keeper from "../keeper/Keeper"
|
|
|
|
import Web3Helper from "../keeper/Web3Helper"
|
|
|
|
import Config from "../models/Config"
|
|
|
|
import Account from "./Account"
|
|
|
|
import Asset from "./Asset"
|
2018-10-09 11:12:37 +02:00
|
|
|
import MetaData from "./MetaData"
|
2018-10-05 12:34:31 +02:00
|
|
|
import Order from "./Order"
|
|
|
|
import Tribe from "./Tribe"
|
|
|
|
|
|
|
|
export default class Ocean {
|
|
|
|
|
|
|
|
public static async getInstance(config) {
|
|
|
|
const ocean = new Ocean(config)
|
|
|
|
ocean.keeper = await Keeper.getInstance(config, ocean.helper)
|
|
|
|
ocean.tribe = await Tribe.getInstance(ocean.helper)
|
|
|
|
ocean.order = new Order(ocean.keeper)
|
|
|
|
ocean.account = new Account(ocean.keeper)
|
|
|
|
ocean.asset = new Asset(ocean.keeper)
|
|
|
|
return ocean
|
|
|
|
}
|
|
|
|
|
|
|
|
public account: Account
|
|
|
|
public order: Order
|
|
|
|
public tribe: Tribe
|
|
|
|
public asset: Asset
|
|
|
|
public helper: Web3Helper
|
|
|
|
public metadata: MetaData
|
|
|
|
|
|
|
|
private keeper: Keeper
|
|
|
|
|
|
|
|
private constructor(config: Config) {
|
|
|
|
|
|
|
|
this.helper = new Web3Helper(config)
|
|
|
|
this.metadata = new MetaData(config)
|
|
|
|
}
|
|
|
|
}
|