ELB-LOG ยป Macros

with-elb-log((credentials bucket-name) &body body)
Bind *elb-log* to #S(elb-log credentials bucket-name), *log-bucket* to #S(log-bucket bucket *elb-log*).
;; Usage of WITH-ELB-LOG
(WITH-STUB-MAKE-LOG-BUCKET
  (LET ((*DEFAULT-TEST-FUNCTION* #'EQUALP)(CREDENTIALS (CONS "ACCESS_KEY" "SECRET_KEY"))(BUCKET-NAME "elb-log"))(WITH-ELB-LOG (CREDENTIALS BUCKET-NAME)
      *ELB-LOG*
;; => #S(ELB-LOG.STRUCT:ELB-LOG
;;       :CREDENTIALS ("ACCESS_KEY" . "SECRET_KEY")
;;       :BUCKET-NAME "elb-log"
;;       :ACCOUNT-ID NIL
;;       :REGION NIL)
      *LOG-BUCKET*
;; => #S(ELB-LOG.STRUCT:LOG-BUCKET
;;       :BUCKETS NIL
;;       :ELB-LOG #S(ELB-LOG.STRUCT:ELB-LOG
;;                   :CREDENTIALS ("ACCESS_KEY" . "SECRET_KEY")
;;                   :BUCKET-NAME "elb-log"
;;                   :ACCOUNT-ID NIL
;;                   :REGION NIL)))))
with-specified-date-elb-log(date (credentials bucket-name) &body body)
Bind *elb-log* to #S(elb-log credentials bucket-name), *log-bucket* to #S(log-bucket bucket *elb-log*), *log-date* to date.
;; Usage of WITH-SPECIFIED-DATE-ELB-LOG
(WITH-STUB-MAKE-LOG-BUCKET
  (LET ((*DEFAULT-TEST-FUNCTION* #'EQUALP)(DATE (ENCODE-TIMESTAMP 0 0 0 0 31 12 2014))(CREDENTIALS (CONS "ACCESS_KEY" "SECRET_KEY"))(BUCKET-NAME "elb-log"))(WITH-SPECIFIED-DATE-ELB-LOG DATE
        (CREDENTIALS BUCKET-NAME)
      *LOG-DATE*
;; => @2014-12-31T00:00:00.000000Z
      *ELB-LOG*
;; => #S(ELB-LOG.STRUCT:ELB-LOG
;;       :CREDENTIALS ("ACCESS_KEY" . "SECRET_KEY")
;;       :BUCKET-NAME "elb-log"
;;       :ACCOUNT-ID NIL
;;       :REGION NIL)
      *LOG-BUCKET*
;; => #S(ELB-LOG.STRUCT:LOG-BUCKET
;;       :BUCKETS NIL
;;       :ELB-LOG #S(ELB-LOG.STRUCT:ELB-LOG
;;                   :CREDENTIALS ("ACCESS_KEY" . "SECRET_KEY")
;;                   :BUCKET-NAME "elb-log"
;;                   :ACCOUNT-ID NIL
;;                   :REGION NIL)))))
with-this-elb-log((credentials bucket-name) &body body)
Bind *elb-log* to #S(elb-log credentials bucket-name), *log-bucket* to #S(log-bucket bucket *elb-log*), *log-date* to (local-time:today).
;; Usage of WITH-THIS-ELB-LOG
(WITH-STUB-MAKE-LOG-BUCKET
  (LET ((*DEFAULT-TEST-FUNCTION* #'EQUALP)(CREDENTIALS (CONS "ACCESS_KEY" "SECRET_KEY"))(BUCKET-NAME "elb-log"))(WITH-THIS-ELB-LOG (CREDENTIALS BUCKET-NAME)
      *LOG-DATE*
;; => @2015-09-06T00:00:00.000000Z
      *ELB-LOG*
;; => #S(ELB-LOG.STRUCT:ELB-LOG
;;       :CREDENTIALS ("ACCESS_KEY" . "SECRET_KEY")
;;       :BUCKET-NAME "elb-log"
;;       :ACCOUNT-ID NIL
;;       :REGION NIL)
      *LOG-BUCKET*
;; => #S(ELB-LOG.STRUCT:LOG-BUCKET
;;       :BUCKETS NIL
;;       :ELB-LOG #S(ELB-LOG.STRUCT:ELB-LOG
;;                   :CREDENTIALS ("ACCESS_KEY" . "SECRET_KEY")
;;                   :BUCKET-NAME "elb-log"
;;                   :ACCOUNT-ID NIL
;;                   :REGION NIL)))))