# File lib/fog/aws/models/compute/volume.rb, line 48
        def save
          if identity
            update_params = {
              'Size'       => self.size,
              'Iops'       => self.iops,
              'VolumeType' => self.type
            }

            service.modify_volume(self.identity, update_params)
            true
          else
            requires :availability_zone
            requires_one :size, :snapshot_id

            if type == 'io1'
              requires :iops
            end

            data = service.create_volume(availability_zone, size, create_params).body
            merge_attributes(data)

            if tags = self.tags
              # expect eventual consistency
              Fog.wait_for { self.reload rescue nil }
              service.create_tags(
                self.identity,
                tags
              )
            end

            if @server
              self.server = @server
            end
            true
          end
        end