Sha256: 396da2d0a8de83ff39146cea8c3922f719acefb78d9ac5dd015c1c66eced931d
Contents?: true
Size: 688 Bytes
Versions: 69
Compression:
Stored size: 688 Bytes
Contents
require 'uuidtools' module Vault module Product # Convert a product name into a v5 UUID. # # @param name [String] A product name. # @raise [RuntimeError] Raised if the product name is empty or contains # illegal characters. A product name may only contain 'a-z', '0-9' and # ':' characters. # @return [String] A v5 UUID that uniquely represents the product. def self.name_to_uuid(name) unless name =~ /[a-z,0-9,:]+/ raise "Product name empty or contains illegal characters." end url = "https://vault.heroku.com/products/#{name}" UUIDTools::UUID.sha1_create(UUIDTools::UUID_URL_NAMESPACE, url).to_s end end end
Version data entries
69 entries across 69 versions & 1 rubygems