Skip to content

Commit

Permalink
feat: unify inconsistent getProviderInfo() and get provider()
Browse files Browse the repository at this point in the history
  • Loading branch information
SewerynKras committed Jun 13, 2024
1 parent b139a0d commit 392d0b4
Show file tree
Hide file tree
Showing 20 changed files with 49 additions and 52 deletions.
2 changes: 1 addition & 1 deletion examples/advanced/step-by-step.ts
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ import { filter, map, switchMap, take } from "rxjs";
// To keep this example simple, we will not retry and just crash if the signing fails
const draftProposal = draftProposals[0]!;
const agreement = await glm.market.proposeAgreement(draftProposal);
console.log("Agreement signed with provider", agreement.getProviderInfo().name);
console.log("Agreement signed with provider", agreement.provider.name);

// Provider is ready to start the computation
// Let's setup payment first
Expand Down
4 changes: 2 additions & 2 deletions src/activity/activity.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,7 @@ export class ActivityModuleImpl implements ActivityModule {
async createActivity(agreement: Agreement): Promise<Activity> {
this.logger.info("Creating activity", {
agreementId: agreement.id,
provider: agreement.getProviderInfo(),
provider: agreement.provider,
});
try {
const activity = await this.activityApi.createActivity(agreement);
Expand All @@ -211,7 +211,7 @@ export class ActivityModuleImpl implements ActivityModule {
this.logger.info("Destroying activity", {
activityId: activity.id,
agreementId: activity.agreement.id,
provider: activity.agreement.getProviderInfo(),
provider: activity.agreement.provider,
});
try {
const updated = await this.activityApi.destroyActivity(activity);
Expand Down
4 changes: 2 additions & 2 deletions src/activity/activity.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,8 @@ export class Activity {
protected readonly usage: ActivityUsageInfo,
) {}

public getProviderInfo(): ProviderInfo {
return this.agreement.getProviderInfo();
public get provider(): ProviderInfo {
return this.agreement.provider;
}

public getState() {
Expand Down
2 changes: 1 addition & 1 deletion src/activity/exe-script-executor.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ describe("ExeScriptExecutor", () => {
reset(mockStorageProvider);
reset(mockActivityModule);
resetAllMocks();
when(mockActivity.getProviderInfo()).thenReturn({
when(mockactivity.provider).thenReturn({
id: "test-provider-id",
name: "test-provider-name",
walletAddress: "0xProviderWallet",
Expand Down
6 changes: 3 additions & 3 deletions src/activity/exe-script-executor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ export class ExeScriptExecutor {
WorkErrorCode.ScriptExecutionFailed,
this.activity.agreement,
this.activity,
this.activity.getProviderInfo(),
this.activity.provider,
error,
);
}
Expand Down Expand Up @@ -181,7 +181,7 @@ export class ExeScriptExecutor {
WorkErrorCode.ActivityResultsFetchingFailed,
agreement,
activity,
activity.getProviderInfo(),
activity.provider,
error,
),
);
Expand Down Expand Up @@ -235,7 +235,7 @@ export class ExeScriptExecutor {
WorkErrorCode.ActivityResultsFetchingFailed,
activity.agreement,
activity,
activity.getProviderInfo(),
activity.provider,
);
}
if (error) {
Expand Down
12 changes: 6 additions & 6 deletions src/activity/work/batch.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ describe("Batch", () => {
walletAddress: "0xTestProvider",
};

when(mockAgreement.getProviderInfo()).thenReturn(providerInfo);
when(mockActivity.getProviderInfo()).thenReturn(providerInfo);
when(mockagreement.provider).thenReturn(providerInfo);
when(mockactivity.provider).thenReturn(providerInfo);
when(mockActivity.agreement).thenReturn(instance(mockAgreement));

activity = instance(mockActivity);
Expand Down Expand Up @@ -161,7 +161,7 @@ describe("Batch", () => {
WorkErrorCode.ScriptExecutionFailed,
activity.agreement,
activity,
activity.getProviderInfo(),
activity.provider,
new Error("FAILURE"),
),
);
Expand All @@ -179,7 +179,7 @@ describe("Batch", () => {
WorkErrorCode.ScriptExecutionFailed,
activity.agreement,
activity,
activity.getProviderInfo(),
activity.provider,
new Error("ERROR"),
),
);
Expand All @@ -197,7 +197,7 @@ describe("Batch", () => {
WorkErrorCode.ScriptExecutionFailed,
activity.agreement,
activity,
activity.getProviderInfo(),
activity.provider,
new Error("FAILURE"),
),
);
Expand Down Expand Up @@ -284,7 +284,7 @@ describe("Batch", () => {
WorkErrorCode.ScriptExecutionFailed,
activity.agreement,
activity,
activity.getProviderInfo(),
activity.provider,
new Error("ERROR"),
),
);
Expand Down
8 changes: 4 additions & 4 deletions src/activity/work/batch.ts
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ export class Batch {
WorkErrorCode.ScriptExecutionFailed,
this.executor.activity.agreement,
this.executor.activity,
this.executor.activity.agreement.getProviderInfo(),
this.executor.activity.agreement.provider,
error,
);
this.logger.debug("Error in batch script execution");
Expand All @@ -130,7 +130,7 @@ export class Batch {
WorkErrorCode.ScriptExecutionFailed,
this.executor.activity.agreement,
this.executor.activity,
this.executor.activity.agreement.getProviderInfo(),
this.executor.activity.agreement.provider,
error,
);
}
Expand All @@ -153,7 +153,7 @@ export class Batch {
WorkErrorCode.ScriptExecutionFailed,
this.executor.activity.agreement,
this.executor.activity,
this.executor.activity.agreement.getProviderInfo(),
this.executor.activity.agreement.provider,
error,
);
}
Expand All @@ -169,7 +169,7 @@ export class Batch {
WorkErrorCode.ScriptExecutionFailed,
activity.agreement,
activity,
activity.getProviderInfo(),
activity.provider,
)
: null;
if (error) {
Expand Down
4 changes: 2 additions & 2 deletions src/activity/work/process.ts
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ export class RemoteProcess {
WorkErrorCode.ActivityResultsFetchingFailed,
this.activity.agreement,
this.activity,
this.activity.getProviderInfo(),
this.activity.provider,
new GolemTimeoutError(`The waiting time (${timeoutInMs} ms) for the final result has been exceeded`),
),
);
Expand All @@ -72,7 +72,7 @@ export class RemoteProcess {
WorkErrorCode.ActivityResultsFetchingFailed,
this.activity.agreement,
this.activity,
this.activity.getProviderInfo(),
this.activity.provider,
),
);
this.activityModule
Expand Down
18 changes: 9 additions & 9 deletions src/activity/work/work.ts
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ export class WorkContext {
this.activityStateCheckingInterval = options?.activityStateCheckingInterval || DEFAULTS.activityStateCheckInterval;

this.logger = options?.logger ?? defaultLogger("work");
this.provider = activity.getProviderInfo();
this.provider = activity.provider;
this.storageProvider = options?.storageProvider ?? new NullStorageProvider();

this.networkNode = options?.networkNode;
Expand Down Expand Up @@ -121,7 +121,7 @@ export class WorkContext {
WorkErrorCode.ActivityDeploymentFailed,
this.activity.agreement,
this.activity,
this.activity.getProviderInfo(),
this.activity.provider,
e,
);
});
Expand All @@ -144,7 +144,7 @@ export class WorkContext {
WorkErrorCode.ActivityDeploymentFailed,
this.activity.agreement,
this.activity,
this.activity.getProviderInfo(),
this.activity.provider,
);
}
})(),
Expand All @@ -158,7 +158,7 @@ export class WorkContext {
WorkErrorCode.ActivityDeploymentFailed,
this.activity.agreement,
this.activity,
this.activity.getProviderInfo(),
this.activity.provider,
error,
);
})
Expand All @@ -175,7 +175,7 @@ export class WorkContext {
WorkErrorCode.ActivityDeploymentFailed,
this.activity.agreement,
this.activity,
this.activity.getProviderInfo(),
this.activity.provider,
);
}

Expand Down Expand Up @@ -263,7 +263,7 @@ export class WorkContext {
WorkErrorCode.ScriptExecutionFailed,
this.activity.agreement,
this.activity,
this.activity.getProviderInfo(),
this.activity.provider,
e,
);
});
Expand Down Expand Up @@ -342,7 +342,7 @@ export class WorkContext {
WorkErrorCode.NetworkSetupMissing,
this.activity.agreement,
this.activity,
this.activity.getProviderInfo(),
this.activity.provider,
);

return this.networkNode.getWebsocketUri(port);
Expand All @@ -355,7 +355,7 @@ export class WorkContext {
WorkErrorCode.NetworkSetupMissing,
this.activity.agreement,
this.activity,
this.activity.getProviderInfo(),
this.activity.provider,
);
return this.networkNode.ip;
}
Expand Down Expand Up @@ -394,7 +394,7 @@ export class WorkContext {
WorkErrorCode.ScriptInitializationFailed,
this.activity.agreement,
this.activity,
this.activity.getProviderInfo(),
this.activity.provider,
e,
);
});
Expand Down
2 changes: 1 addition & 1 deletion src/golem-network/golem-network.ts
Original file line number Diff line number Diff line change
Expand Up @@ -359,7 +359,7 @@ export class GolemNetwork {
});

const networkNode = order.network
? await this.network.createNetworkNode(order.network, agreement.getProviderInfo().id)
? await this.network.createNetworkNode(order.network, agreement.provider.id)
: undefined;

const lease = this.lease.createLease(agreement, allocation, {
Expand Down
2 changes: 1 addition & 1 deletion src/lease-process/lease-process-pool.ts
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ export class LeaseProcessPool {
try {
const agreement = await this.marketModule.signAgreementFromPool(this.proposalPool, this.agreementOptions);
const networkNode = this.network
? await this.networkModule.createNetworkNode(this.network, agreement.getProviderInfo().id)
? await this.networkModule.createNetworkNode(this.network, agreement.provider.id)
: undefined;
const leaseProcess = this.leaseModule.createLease(agreement, this.allocation, {
networkNode,
Expand Down
2 changes: 1 addition & 1 deletion src/market/agreement/agreement.ts
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ export class Agreement {
return this.model.state;
}

getProviderInfo(): ProviderInfo {
get provider(): ProviderInfo {
return {
id: this.model.offer.providerId,
name: this.model.offer.properties["golem.node.id.name"],
Expand Down
4 changes: 2 additions & 2 deletions src/market/market.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -389,7 +389,7 @@ export class MarketModuleImpl implements MarketModule {

this.logger.info("Proposed and got approval for agreement", {
agreementId: agreement.id,
provider: agreement.getProviderInfo(),
provider: agreement.provider,
});

return agreement;
Expand All @@ -400,7 +400,7 @@ export class MarketModuleImpl implements MarketModule {

this.logger.info("Terminated agreement", {
agreementId: agreement.id,
provider: agreement.getProviderInfo(),
provider: agreement.provider,
reason,
});

Expand Down
5 changes: 1 addition & 4 deletions src/market/proposal/offer-proposal.ts
Original file line number Diff line number Diff line change
Expand Up @@ -40,16 +40,13 @@ export type ProposalDTO = Partial<{
*/
export class OfferProposal extends MarketProposal {
public readonly issuer = "Provider";
public provider: ProviderInfo;

constructor(
model: MarketApi.ProposalDTO,
public readonly demand: Demand,
) {
super(model);

this.provider = this.getProviderInfo();

this.validate();
}

Expand Down Expand Up @@ -107,7 +104,7 @@ export class OfferProposal extends MarketProposal {
return this.pricing.start + this.pricing.cpuSec * threadsNo + this.pricing.envSec;
}

public getProviderInfo(): ProviderInfo {
public get provider(): ProviderInfo {
return {
id: this.model.issuerId,
name: this.properties["golem.node.id.name"],
Expand Down
4 changes: 2 additions & 2 deletions src/payment/agreement_payment_process.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ beforeEach(() => {
walletAddress: "0x1234",
};

when(agreementMock.getProviderInfo()).thenReturn(testProviderInfo);
when(agreementMock.provider).thenReturn(testProviderInfo);
when(invoiceMock.provider).thenReturn(testProviderInfo);
when(mockPaymentModule.observeInvoices()).thenReturn(new Subject());
when(mockPaymentModule.observeDebitNotes()).thenReturn(new Subject());
Expand Down Expand Up @@ -170,7 +170,7 @@ describe("AgreementPaymentProcess", () => {
"Agreement agreement-id is already covered with an invoice: invoice-id",
PaymentErrorCode.AgreementAlreadyPaid,
allocation,
agreement.getProviderInfo(),
agreement.provider,
),
);
expect(process.isFinished()).toEqual(true);
Expand Down
2 changes: 1 addition & 1 deletion src/payment/agreement_payment_process.ts
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,7 @@ export class AgreementPaymentProcess {
invoiceId: invoice.id,
agreementId: invoice.agreementId,
amount: invoice.amount,
provider: this.agreement.getProviderInfo(),
provider: this.agreement.provider,
});
} catch (error) {
const message = getMessageFromApiError(error);
Expand Down
8 changes: 4 additions & 4 deletions src/shared/yagna/adapters/activity-api-adapter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ export class ActivityApiAdapter implements IActivityApi {
WorkErrorCode.ActivityCreationFailed,
agreement,
undefined,
agreement.getProviderInfo(),
agreement.provider,
);
}
}
Expand All @@ -55,7 +55,7 @@ export class ActivityApiAdapter implements IActivityApi {
WorkErrorCode.ActivityDestroyingFailed,
activity.agreement,
activity,
activity.agreement.getProviderInfo(),
activity.agreement.provider,
);
}
}
Expand All @@ -74,7 +74,7 @@ export class ActivityApiAdapter implements IActivityApi {
WorkErrorCode.ScriptExecutionFailed,
activity.agreement,
activity,
activity.agreement.getProviderInfo(),
activity.agreement.provider,
);
}
}
Expand All @@ -95,7 +95,7 @@ export class ActivityApiAdapter implements IActivityApi {
WorkErrorCode.ActivityResultsFetchingFailed,
activity.agreement,
activity,
activity.getProviderInfo(),
activity.provider,
error,
);
}
Expand Down
2 changes: 1 addition & 1 deletion src/shared/yagna/adapters/market-api-adapter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ export class MarketApiAdapter implements IMarketApi {
);
}

this.logger.info("Established agreement", { agreementId: agreement.id, provider: agreement.getProviderInfo() });
this.logger.info("Established agreement", { agreementId: agreement.id, provider: agreement.provider });

return confirmed;
}
Expand Down
Loading

0 comments on commit 392d0b4

Please sign in to comment.