Sha256: f3ad885c88194051f2f2cb0aada72d0fbe9938b646284c700417a52bad996cd5

Contents?: true

Size: 1.88 KB

Versions: 6

Compression:

Stored size: 1.88 KB

Contents

# frozen_string_literal: true

module NgrokAPI
  module Models
    class SSHUserCertificate
      attr_reader :client,
        :result,
        :id,
        :uri,
        :created_at,
        :description,
        :metadata,
        :public_key,
        :key_type,
        :ssh_certificate_authority_id,
        :principals,
        :critical_options,
        :extensions,
        :valid_after,
        :valid_until,
        :certificate

      def initialize(client:, result:)
        @client = client
        @result = result
        @id = @result['id']
        @uri = @result['uri']
        @created_at = @result['created_at']
        @description = @result['description']
        @metadata = @result['metadata']
        @public_key = @result['public_key']
        @key_type = @result['key_type']
        @ssh_certificate_authority_id = @result['ssh_certificate_authority_id']
        @principals = @result['principals']
        @critical_options = @result['critical_options']
        @extensions = @result['extensions']
        @valid_after = @result['valid_after']
        @valid_until = @result['valid_until']
        @certificate = @result['certificate']
      end

      def ==(other)
        @result == other.result
      end

      def to_s
        @result.to_s
      end

      ##
      # Delete an SSH User Certificate
      #
      # https://ngrok.com/docs/api#api-ssh-user-certificates-delete
      def delete
        @client.delete(
          id: @id
        )
      end

      ##
      # Update an SSH User Certificate
      #
      # https://ngrok.com/docs/api#api-ssh-user-certificates-update
      def update(
        description: nil,
        metadata: nil
      )
        @description = description if description
        @metadata = metadata if metadata
        @client.update(
          id: @id,
          description: description,
          metadata: metadata
        )
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
ngrok-api-0.18.0 lib/ngrokapi/models/ssh_user_certificate.rb
ngrok-api-0.17.0 lib/ngrokapi/models/ssh_user_certificate.rb
ngrok-api-0.16.0 lib/ngrokapi/models/ssh_user_certificate.rb
ngrok-api-0.15.0 lib/ngrokapi/models/ssh_user_certificate.rb
ngrok-api-0.14.0 lib/ngrokapi/models/ssh_user_certificate.rb
ngrok-api-0.12.0 lib/ngrokapi/models/ssh_user_certificate.rb