;; title: sample-dapp-state
;; version:
;; summary:
;; description:
;; constants
(define-constant err-not-sample-dapp (err u100))
;;
;; data vars
(define-data-var sample-dapp-impl principal tx-sender)
(define-data-var admin principal tx-sender)
(define-data-var connection-impl principal tx-sender)
;;
;; public functions
(define-public (set-sample-dapp-impl (who principal))
(begin
(try! (is-dapp))
(ok (var-set sample-dapp-impl who))
)
)
(define-public (set-admin (who principal))
(begin
(try! (is-dapp))
(ok (var-set admin who))
)
)
(define-public (set-connection-impl (connection principal))
(begin
(try! (is-dapp))
(ok (var-set connection-impl connection))))
;;
;; read only functions
(define-read-only (is-dapp)
(ok (asserts! (is-eq contract-caller (var-get sample-dapp-impl)) err-not-sample-dapp))
)
(define-read-only (get-admin) (var-get admin))
(define-read-only (get-sample-dapp-impl) (var-get sample-dapp-impl))
(define-read-only (get-connection-impl) (var-get connection-impl))
(define-read-only (get-impl-params)
(tuple (impl (var-get sample-dapp-impl)) (next false))
)
;;