Class: GolemNetwork
golem-network/golem-network.GolemNetwork
General purpose and high-level API for the Golem Network
This class is the main entry-point for developers that would like to build on Golem Network using @golem-sdk/golem-js. It is supposed to provide an easy access API for use 80% of use cases.
Table of contents
Constructors
Properties
Methods
Constructors
constructor
• new GolemNetwork(options?): GolemNetwork
Parameters
| Name | Type | 
|---|---|
| options | Partial<GolemNetworkOptions> | 
Returns
Defined in
src/golem-network/golem-network.ts:229
Properties
events
• Readonly events: EventEmitter<GolemNetworkEvents, any>
Defined in
src/golem-network/golem-network.ts:198
options
• Readonly options: GolemNetworkOptions
Defined in
src/golem-network/golem-network.ts:200
market
• Readonly market: MarketModule
Defined in
src/golem-network/golem-network.ts:206
payment
• Readonly payment: PaymentModule
Defined in
src/golem-network/golem-network.ts:207
activity
• Readonly activity: ActivityModule
Defined in
src/golem-network/golem-network.ts:208
network
• Readonly network: NetworkModule
Defined in
src/golem-network/golem-network.ts:209
rental
• Readonly rental: RentalModule
Defined in
src/golem-network/golem-network.ts:210
services
• Readonly services: GolemServices
Dependency Container
Defined in
src/golem-network/golem-network.ts:215
Methods
connect
▸ connect(): Promise<void>
"Connects" to the network by initializing the underlying components required to perform operations on Golem Network
Returns
Promise<void>
Resolves when all initialization steps are completed
Defined in
src/golem-network/golem-network.ts:322
disconnect
▸ disconnect(): Promise<void>
"Disconnects" from the Golem Network
Returns
Promise<void>
Resolves when all shutdown steps are completed
Defined in
src/golem-network/golem-network.ts:358
oneOf
▸ oneOf(options): Promise<ResourceRental>
Define your computational resource demand and access a single instance
Use Case: Get a single instance of a resource from the market to execute operations on
Parameters
| Name | Type | 
|---|---|
| options | OneOfOptions | 
Returns
Promise<ResourceRental>
Example
const rental = await glm.oneOf({ order });
await rental
 .getExeUnit()
 .then((exe) => exe.run("echo Hello, Golem! 👋"))
 .then((res) => console.log(res.stdout));
await rental.stopAndFinalize();Defined in
src/golem-network/golem-network.ts:425
manyOf
▸ manyOf(options): Promise<ResourceRentalPool>
Define your computational resource demand and access a pool of instances. The pool will grow up to the specified poolSize.
Parameters
| Name | Type | 
|---|---|
| options | ManyOfOptions | 
Returns
Promise<ResourceRentalPool>
Example
// create a pool that can grow up to 3 rentals at the same time
const pool = await glm.manyOf({
  poolSize: 3,
  demand
});
await Promise.allSettled([
  pool.withRental(async (rental) =>
    rental
      .getExeUnit()
      .then((exe) => exe.run("echo Hello, Golem from the first machine! 👋"))
      .then((res) => console.log(res.stdout)),
  ),
  pool.withRental(async (rental) =>
    rental
      .getExeUnit()
      .then((exe) => exe.run("echo Hello, Golem from the second machine! 👋"))
      .then((res) => console.log(res.stdout)),
  ),
  pool.withRental(async (rental) =>
    rental
      .getExeUnit()
      .then((exe) => exe.run("echo Hello, Golem from the third machine! 👋"))
      .then((res) => console.log(res.stdout)),
  ),
]);Defined in
src/golem-network/golem-network.ts:548
isConnected
▸ isConnected(): boolean
Returns
boolean
Defined in
src/golem-network/golem-network.ts:621
createNetwork
▸ createNetwork(options?): Promise<Network>
Creates a new logical network within the Golem VPN infrastructure. Allows communication between network nodes using standard network mechanisms, but requires specific implementation in the ExeUnit/runtime, which must be capable of providing a standard Unix-socket interface to their payloads and marshaling the logical network traffic through the Golem Net transport layer
Parameters
| Name | Type | 
|---|---|
| options? | NetworkOptions | 
Returns
Promise<Network>
Defined in
src/golem-network/golem-network.ts:633
destroyNetwork
▸ destroyNetwork(network): Promise<void>
Removes an existing network from the Golem VPN infrastructure.
Parameters
| Name | Type | 
|---|---|
| network | Network | 
Returns
Promise<void>