mirror of
https://github.com/duanhf2012/origin.git
synced 2026-02-04 06:54:45 +08:00
38 lines
746 B
Go
38 lines
746 B
Go
package blueprint
|
|
|
|
import (
|
|
"fmt"
|
|
)
|
|
|
|
type Blueprint struct {
|
|
execPool ExecPool
|
|
graphPool GraphPool
|
|
|
|
blueprintModule IBlueprintModule
|
|
}
|
|
|
|
func (bm *Blueprint) Init(execDefFilePath string, graphFilePath string, blueprintModule IBlueprintModule) error {
|
|
err := bm.execPool.Load(execDefFilePath)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
for _, e := range execNodes {
|
|
if !bm.execPool.Register(e) {
|
|
return fmt.Errorf("register exec failed,exec:%s", e.GetName())
|
|
}
|
|
}
|
|
|
|
err = bm.graphPool.Load(&bm.execPool, graphFilePath, blueprintModule)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
bm.blueprintModule = blueprintModule
|
|
return nil
|
|
}
|
|
|
|
func (bm *Blueprint) Create(graphName string, graphID int64) IGraph {
|
|
return bm.graphPool.Create(graphName, graphID)
|
|
}
|