lib/rocket_job/plugins/document.rb in rocketjob-5.1.1 vs lib/rocket_job/plugins/document.rb in rocketjob-5.2.0.beta1
- old
+ new
@@ -1,35 +1,37 @@
-require 'active_support/concern'
+require "active_support/concern"
module RocketJob
module Plugins
# Base class for storing models in MongoDB
module Document
extend ActiveSupport::Concern
include ::Mongoid::Document
included do
- store_in client: 'rocketjob'
+ store_in client: "rocketjob"
end
+ # rubocop:disable Style/RedundantSort
module ClassMethods
# Mongoid does not apply ordering, add sort
def first
- all.sort('_id' => 1).first
+ all.sort("_id" => 1).first
end
# Mongoid does not apply ordering, add sort
def last
- all.sort('_id' => -1).first
+ all.sort("_id" => -1).first
end
end
+ # rubocop:enable Style/RedundantSort
private
# Apply changes to this document returning the updated document from the database.
# Allows other changes to be made on the server that will be loaded.
def find_and_update(attrs)
- doc = collection.find(_id: id).find_one_and_update({'$set' => attrs}, return_document: :after)
+ doc = collection.find(_id: id).find_one_and_update({"$set" => attrs}, return_document: :after)
raise(::Mongoid::Errors::DocumentNotFound.new(self.class, id)) unless doc
# Clear out keys that are not returned during the reload from MongoDB
(fields.keys + embedded_relations.keys - doc.keys).each { |key| send("#{key}=", nil) }
@attributes = doc