-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGenerator.go
More file actions
29 lines (22 loc) · 831 Bytes
/
Generator.go
File metadata and controls
29 lines (22 loc) · 831 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package main
import (
"github.com/ftcjeff/ConfigurationProcessor/logger"
"github.com/ftcjeff/ConfigurationProcessor/types"
"github.com/ftcjeff/ConfigurationProcessor/generators"
)
func Generator(model types.ModelType) (types.ModelType, error) {
defer logger.Trace(logger.Enter())
modelAChan := make(chan types.ModelAType)
modelBChan := make(chan types.ModelBType)
modelCChan := make(chan types.ModelCType)
serverChan := make(chan []types.ServerType)
go generators.ModelAGenerator(model, modelAChan)
go generators.ModelBGenerator(model, modelBChan)
go generators.ModelCGenerator(model, modelCChan)
go generators.ServerGenerator(model, serverChan)
model.Models.ModelA = <-modelAChan
model.Models.ModelB = <-modelBChan
model.Models.ModelC = <-modelCChan
model.Models.Servers = <-serverChan
return model, nil
}