http urls monitor.

swagger.go 704B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package swag
  2. import (
  3. "errors"
  4. "sync"
  5. )
  6. // Name TODO: NEEDS COMMENT INFO
  7. const Name = "swagger"
  8. // TODO: NEEDS COMMENT INFO
  9. var (
  10. swaggerMu sync.RWMutex
  11. swag Swagger
  12. )
  13. // Swagger TODO: NEEDS COMMENT INFO
  14. type Swagger interface {
  15. ReadDoc() string
  16. }
  17. // Register TODO: NEEDS COMMENT INFO
  18. func Register(name string, swagger Swagger) {
  19. swaggerMu.Lock()
  20. defer swaggerMu.Unlock()
  21. if swagger == nil {
  22. panic("swagger is nil")
  23. }
  24. if swag != nil {
  25. panic("Register called twice for swag: " + name)
  26. }
  27. swag = swagger
  28. }
  29. // ReadDoc TODO: NEEDS COMMENT INFO
  30. func ReadDoc() (string, error) {
  31. if swag != nil {
  32. return swag.ReadDoc(), nil
  33. }
  34. return "", errors.New("not yet registered swag")
  35. }