/
Component.go
33 lines (28 loc) · 982 Bytes
/
Component.go
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
30
31
32
33
package components
import (
"github.com/pip-services3-go/pip-services3-commons-go/config"
"github.com/pip-services3-go/pip-services3-commons-go/refer"
"github.com/pip-services3-go/pip-services3-components-go/count"
"github.com/pip-services3-go/pip-services3-components-go/log"
)
type Component struct {
dependencyResolver *refer.DependencyResolver
logger *log.CompositeLogger
counters *count.CompositeCounters
}
func InheritComponent() *Component {
return &Component{
dependencyResolver: refer.NewDependencyResolver(),
logger: log.NewCompositeLogger(),
counters: count.NewCompositeCounters(),
}
}
func (c *Component) Configure(config *config.ConfigParams) {
c.dependencyResolver.Configure(config)
c.logger.Configure(config)
}
func (c *Component) SetReferences(references refer.IReferences) {
c.dependencyResolver.SetReferences(references)
c.logger.SetReferences(references)
c.counters.SetReferences(references)
}