Browse Source

feat: support bring out endpoint declaration

Yeuoly 10 months ago
parent
commit
68af1ad0e0
2 changed files with 9 additions and 7 deletions
  1. 1 0
      internal/service/endpoint.go
  2. 8 7
      internal/types/models/endpoint.go

+ 1 - 0
internal/service/endpoint.go

@@ -247,6 +247,7 @@ func ListEndpoints(tenant_id string, page int, page_size int) *entities.Response
 		}
 		}
 
 
 		endpoint.SetSettings(decrypted_settings)
 		endpoint.SetSettings(decrypted_settings)
+		endpoint.Declaration = plugin_declaration.Endpoint
 
 
 		endpoints[i] = endpoint
 		endpoints[i] = endpoint
 	}
 	}

+ 8 - 7
internal/types/models/endpoint.go

@@ -18,13 +18,14 @@ type EndpointInstallation struct {
 // HookID is a pointer to plugin id and tenant id, using it to identify the endpoint plugin
 // HookID is a pointer to plugin id and tenant id, using it to identify the endpoint plugin
 type Endpoint struct {
 type Endpoint struct {
 	Model
 	Model
-	HookID    string    `json:"hook_id" gorm:"unique;size:127;column:hook_id"`
-	TenantID  string    `json:"tenant_id" gorm:"index;size:64;column:tenant_id"`
-	UserID    string    `json:"user_id" gorm:"index;size:64;column:user_id"`
-	PluginID  string    `json:"plugin_id" gorm:"index;size:64;column:plugin_id"`
-	ExpiredAt time.Time `json:"expired_at" gorm:"column:expired_at"`
-	Enabled   bool      `json:"enabled" gorm:"column:enabled"`
-	Settings  string    `json:"settings" gorm:"column:settings;size:2048"`
+	HookID      string                                       `json:"hook_id" gorm:"unique;size:127;column:hook_id"`
+	TenantID    string                                       `json:"tenant_id" gorm:"index;size:64;column:tenant_id"`
+	UserID      string                                       `json:"user_id" gorm:"index;size:64;column:user_id"`
+	PluginID    string                                       `json:"plugin_id" gorm:"index;size:64;column:plugin_id"`
+	ExpiredAt   time.Time                                    `json:"expired_at" gorm:"column:expired_at"`
+	Enabled     bool                                         `json:"enabled" gorm:"column:enabled"`
+	Settings    string                                       `json:"settings" gorm:"column:settings;size:2048"`
+	Declaration *plugin_entities.EndpointProviderDeclaration `json:"declaration" gorm:"-"` // not stored in db
 }
 }
 
 
 func (e *Endpoint) GetSettings() map[string]any {
 func (e *Endpoint) GetSettings() map[string]any {