       (assoc routing-entry :method m))))
 
 (defn default-configurer
-  "The configurer is passed the final swagger object and can make final changes to it. This implementation
-  does nothing, returning the swagger object unchanged."
+  "The configurer is passed the swagger options, the final Swagger object, and the seq of routing entries,
+   and can make final changes to it. This implementation does nothing, returning the Swagger object unchanged."
   [swagger-options swagger-object routing-entries]
   swagger-object)
+
+(defn default-response-decorator
+  "A callback to decorate a specific response object just before it is stored into the swagger-object."
+  [swagger-options swagger-object routing-entry status-code response-schema response-object]
+  response-object)
 
 (def default-data-type-mappings
   {s/Int     {:type :integer}


  nil or s/Any returns nil.


  Typically, the result of this is wrapped inside map with key :schema."
  [swagger-options swagger-object schema]
  (cond-let

   :route-injector                 default-route-injector
   :configurer                     default-configurer
   :data-type-mappings             default-data-type-mappings
   :operation-injector             default-operation-injector
   :operation-decorator            default-operation-decorator
   :path-params-injector           default-path-params-injector
   :query-params-injector          default-query-params-injector
   :body-params-injector           default-body-params-injector
   :responses-injector             default-responses-injector
   :response-decorator             default-response-decorator})

(defn construct-swagger-object
  "Constructs the root Swagger object from the Rook options, swagger options, and the routing table
