mirror of
https://github.com/status-im/dagger-contracts.git
synced 2025-02-18 01:27:11 +00:00
[marketplace] inline _context()
This commit is contained in:
parent
e828529e90
commit
32b137a427
@ -56,9 +56,7 @@ contract Marketplace is Collateral, Proofs, StateRetrieval {
|
|||||||
require(requests[id].client == address(0), "Request already exists");
|
require(requests[id].client == address(0), "Request already exists");
|
||||||
|
|
||||||
requests[id] = request;
|
requests[id] = request;
|
||||||
RequestContext storage context = _context(id);
|
requestContexts[id].endsAt = block.timestamp + request.ask.duration;
|
||||||
// set contract end time to `duration` from now (time request was created)
|
|
||||||
context.endsAt = block.timestamp + request.ask.duration;
|
|
||||||
|
|
||||||
addToMyRequests(request.client, id);
|
addToMyRequests(request.client, id);
|
||||||
|
|
||||||
@ -91,7 +89,7 @@ contract Marketplace is Collateral, Proofs, StateRetrieval {
|
|||||||
|
|
||||||
slot.host = msg.sender;
|
slot.host = msg.sender;
|
||||||
slot.state = SlotState.Filled;
|
slot.state = SlotState.Filled;
|
||||||
RequestContext storage context = _context(requestId);
|
RequestContext storage context = requestContexts[requestId];
|
||||||
context.slotsFilled += 1;
|
context.slotsFilled += 1;
|
||||||
|
|
||||||
addToMySlots(slot.host, slotId);
|
addToMySlots(slot.host, slotId);
|
||||||
@ -172,7 +170,7 @@ contract Marketplace is Collateral, Proofs, StateRetrieval {
|
|||||||
RequestId requestId,
|
RequestId requestId,
|
||||||
SlotId slotId
|
SlotId slotId
|
||||||
) private marketplaceInvariant {
|
) private marketplaceInvariant {
|
||||||
RequestContext storage context = _context(requestId);
|
RequestContext storage context = requestContexts[requestId];
|
||||||
Request storage request = _request(requestId);
|
Request storage request = _request(requestId);
|
||||||
context.state = RequestState.Finished;
|
context.state = RequestState.Finished;
|
||||||
removeFromMyRequests(request.client, requestId);
|
removeFromMyRequests(request.client, requestId);
|
||||||
@ -194,7 +192,7 @@ contract Marketplace is Collateral, Proofs, StateRetrieval {
|
|||||||
Request storage request = requests[requestId];
|
Request storage request = requests[requestId];
|
||||||
require(block.timestamp > request.expiry, "Request not yet timed out");
|
require(block.timestamp > request.expiry, "Request not yet timed out");
|
||||||
require(request.client == msg.sender, "Invalid client address");
|
require(request.client == msg.sender, "Invalid client address");
|
||||||
RequestContext storage context = _context(requestId);
|
RequestContext storage context = requestContexts[requestId];
|
||||||
require(context.state == RequestState.New, "Invalid state");
|
require(context.state == RequestState.New, "Invalid state");
|
||||||
|
|
||||||
// Update request state to Cancelled. Handle in the withdraw transaction
|
// Update request state to Cancelled. Handle in the withdraw transaction
|
||||||
@ -249,18 +247,12 @@ contract Marketplace is Collateral, Proofs, StateRetrieval {
|
|||||||
return slot;
|
return slot;
|
||||||
}
|
}
|
||||||
|
|
||||||
function _context(
|
|
||||||
RequestId requestId
|
|
||||||
) internal view returns (RequestContext storage) {
|
|
||||||
return requestContexts[requestId];
|
|
||||||
}
|
|
||||||
|
|
||||||
function proofPeriod() public view returns (uint256) {
|
function proofPeriod() public view returns (uint256) {
|
||||||
return secondsPerPeriod;
|
return secondsPerPeriod;
|
||||||
}
|
}
|
||||||
|
|
||||||
function requestEnd(RequestId requestId) public view returns (uint256) {
|
function requestEnd(RequestId requestId) public view returns (uint256) {
|
||||||
uint256 end = _context(requestId).endsAt;
|
uint256 end = requestContexts[requestId].endsAt;
|
||||||
RequestState state = requestState(requestId);
|
RequestState state = requestState(requestId);
|
||||||
if (state == RequestState.New || state == RequestState.Started) {
|
if (state == RequestState.New || state == RequestState.Started) {
|
||||||
return end;
|
return end;
|
||||||
@ -317,7 +309,7 @@ contract Marketplace is Collateral, Proofs, StateRetrieval {
|
|||||||
function requestState(
|
function requestState(
|
||||||
RequestId requestId
|
RequestId requestId
|
||||||
) public view returns (RequestState) {
|
) public view returns (RequestState) {
|
||||||
RequestContext storage context = _context(requestId);
|
RequestContext storage context = requestContexts[requestId];
|
||||||
if (
|
if (
|
||||||
context.state == RequestState.New &&
|
context.state == RequestState.New &&
|
||||||
block.timestamp > _request(requestId).expiry
|
block.timestamp > _request(requestId).expiry
|
||||||
|
Loading…
x
Reference in New Issue
Block a user