module PlentyClient::Endpoint::ClassMethods
Public Instance Methods
build_endpoint(api_endpoint_template, arguments = {})
click to toggle source
Method that replaces the arguments in an endpoint with the given parameters. Arguments that are passed to the build_endpoint
method, but do not live in the endpoint, are discarded.
# File lib/plenty_client/endpoint.rb, line 7 def build_endpoint(api_endpoint_template, arguments = {}) # Duplicate constant to temporary endpoint string api_endpoint_result = api_endpoint_template.dup # Endpoint parameters hash that links symbols to regex endpoint_parameters = { account: /\{accountId\}/, address: /\{addressId\}/, address_type: /\{addressTypeId\}/, account_ype: /\{accountType\}/, attribute: /\{attributeId\}/, attribute_value: /\{attributeValueId\}/, barcode: /\{barcodeId\}/, bundle: /\{bundleId\}/, cat: /\{catId\}/, commission: /\{commissionId\}/, component: /\{componentId\}/, comment: /\{commentId\}/, contact: /\{contactId\}/, contact_bank: /\{contactBankId\}/, country: /\{countryId\}/, coupon_string: /\{coupon\}/, credentials: /\{credentialsId\}/, cross_item: /\{crossItemId\}/, currency: /\{currencyIso\}/, customer_class: /\{customerClassId\}/, directory: /\{directoryId\}/, document: /\{documentId\}/, fitment: /\{fitmentId\}/, image: /\{imageId\}/, item: /\{itemId\}/, item_set: /\{itemSetId\}/, lang: /\{lang\}/, layout_template: /\{layoutTemplateId}/, location: /\{locationId\}/, listing: /\{listingId\}/, manufacturer: /\{manufacturerId\}/, market: /\{marketId\}/, market_ident_number: /\{marketIdentNumberId\}/, market_listing: /\{marketListingId\}/, market_listing_history: /\{marketListingHistoryId\}/, market_text: /\{marketTextId\}/, marketplace: /\{marketplaceId\}/, name: /\{nameId\}/, option_template: /\{optionTemplateId}/, order: /\{orderId\}/, order_item: /\{orderItemId\}/, order_summary: /\{orderSummaryId\}/, payment: /\{paymentId\}/, payment_method: /\{paymentMethodId\}/, parent_referrer: /\{parentReferrerId\}/, plenty: /\{plentyId\}/, plugin_key: /\{pluginKey\}/, preset: /\{presetId\}/, property_type: /\{propertyTypeId\}/, property_value: /\{propertyValue\}/, price: /\{priceId\}/, property_group: /\{propertyGroupId\}/, property: /\{propertyId\}/, rack: /\{rackId\}/, referrer: /\{referrerId\}/, reference_type: /\{referenceType\}/, reference_value: /\{referenceValue\}/, sales_price: /\{salesPriceId\}/, shelf: /\{shelfId\}/, shipping_profile: /\{shippingProfileId\}/, shipping_package: /\{orderShippingPackageId\}/, shipping_service_provider: /\{shippingServiceProviderID\}/, sku: /\{skuId\}/, status: /\{statusId\}/, storage_location: /\{storageLocationId\}/, ticket: /\{ticketId\}/, transaction_type: /\{transactionTypeId\}/, type: /\{typeId\}/, type_string: /\{type\}/, unit: /\{unitId\}/, value: /\{valueId\}/, variation: /\{variationId\}/, variation_supplier: /\{variationSupplierId\}/, warehouse: /\{warehouseId\}/, webstore: /\{webstoreId\}/ } # Loop over the given argument symbols, retrieve the corresponding regex # and replace the argument with the corresponding value. arguments.each do |k, v| api_endpoint_result.gsub!(endpoint_parameters.fetch(k), v.to_s) end api_endpoint_result end
routes()
click to toggle source
# File lib/plenty_client/endpoint.rb, line 97 def routes # Prints all available routes with their values in the given module constants.each do |const| puts "#{const}: \t #{const_get(const)}" if const.to_s.upcase!.nil? end end