Sha256: 5d05104aab169fafd57cf6f7bddc91d486ba335746b6e824730edee0069ad4ef

Contents?: true

Size: 901 Bytes

Versions: 2

Compression:

Stored size: 901 Bytes

Contents

module GoogleApps
  module Atom
    class GroupOwner < Document
      attr_reader :address

      def initialize(xml = nil)
        super(xml)
        xml ? attrs_from_props : @doc.root = build_root(:group)
      end


      #
      # @param [String] address email address of the owner object.
      #
      # @visibility public
      # @return
      def add_address(address)
        add_prop_node('email', address)
        @doc = parse @doc
      end


      def update_address(address)
        find_and_update '//apps:property', { name: ['email', 'email'], value: [@address, address] }
        @doc = parse @doc
      end


      #
      # @param [String] value Email address for the owner object
      #
      # @visibility public
      # @return
      def address=(value)
        @address ? update_address(value) : add_address(value)

        @address = value
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
google_apps-0.9 lib/google_apps/atom/group_owner.rb
google_apps-0.5 lib/google_apps/atom/group_owner.rb