Sha256: e48df7d1e0e8ceea67421f4a1001c48b2c39f308f9614d5c06411aa37e3932a7
Contents?: true
Size: 1.01 KB
Versions: 2
Compression:
Stored size: 1.01 KB
Contents
# frozen_string_literal: true module Decidim module BulletinBoard # The base class for all commands. class Command include Wisper::Publisher attr_reader :settings, :graphql def configure(settings, graphql) @settings = settings @graphql = graphql end def sign_message(message_id, message) JWT.encode(complete_message(message_id, message), settings.private_key.keypair, "RS256") end def complete_message(message_id, message) message.merge({ iat: Time.now.to_i, message_id: message_id }) end def build_message_id(unique_election_id, type_subtype, voter_id = nil) MessageIdentifier.format(unique_election_id, type_subtype, voter_id ? :voter : :authority, voter_id || settings.authority_slug) end def unique_election_id(election_id) MessageIdentifier.unique_election_id(settings.authority_slug, election_id) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
decidim-bulletin_board-0.10.1 | lib/decidim/bulletin_board/command.rb |
decidim-bulletin_board-0.10.0 | lib/decidim/bulletin_board/command.rb |