Sha256: e4eb9337fdbce77387ca5123625ebb0cd6a5e70baf5235e09df80d2085892e8c

Contents?: true

Size: 1.1 KB

Versions: 4

Compression:

Stored size: 1.1 KB

Contents

# encoding: utf-8

module QueryBuilder::CQL

  module Contexts

    # Describes the Cassandra user
    #
    class User < Base

      attribute :name, required: true

      # Returns the full name of the type
      #
      # @return [String]
      #
      def to_s
        name.to_s
      end

      # Builds the 'ALTER USER' CQL statement with password
      #
      # @param [#to_s] password
      #
      # @return [QueryBuilder::Statements::AlterUser]
      #
      def alter(password)
        Statements::AlterUser.new(context: self).password(password)
      end

      # Builds the 'CREATE USER' CQL statement with password
      #
      # @param [#to_s] password
      #
      # @return [QueryBuilder::Statements::CreateUser]
      #
      def create(password)
        Statements::CreateUser.new(context: self).password(password)
      end

      # Builds the 'DROP USER' CQL statement
      #
      # @return [QueryBuilder::Statements::DropUser]
      #
      def drop
        Statements::DropUser.new(context: self)
      end

    end # class User

  end # module Contexts

end # module QueryBuilder::CQL::Contexts

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
query_builder-0.0.4 lib/query_builder/cql/contexts/user.rb
query_builder-0.0.3 lib/query_builder/cql/contexts/user.rb
query_builder-0.0.2 lib/query_builder/cql/contexts/user.rb
query_builder-0.0.1 lib/query_builder/cql/contexts/user.rb