createEmptyCartForCustomer = $createEmptyCartForCustomer; $this->createEmptyCartForGuest = $createEmptyCartForGuest; $this->maskedQuoteIdToQuoteId = $maskedQuoteIdToQuoteId; $this->validateMaskedQuoteId = $validateMaskedQuoteId; } /** * @inheritdoc */ public function resolve(Field $field, $context, ResolveInfo $info, array $value = null, array $args = null) { $customerId = $context->getUserId(); $predefinedMaskedQuoteId = null; if (isset($args['input']['cart_id'])) { $predefinedMaskedQuoteId = $args['input']['cart_id']; $this->validateMaskedQuoteId->execute($predefinedMaskedQuoteId); } $maskedQuoteId = (0 === $customerId || null === $customerId) ? $this->createEmptyCartForGuest->execute($predefinedMaskedQuoteId) : $this->createEmptyCartForCustomer->execute($customerId, $predefinedMaskedQuoteId); return $maskedQuoteId; } }