|
@@ -22,15 +22,24 @@ type ClientProxy struct {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// NewClientProxy -- возвращает новый прокси подписывания клиента на топик
|
|
// NewClientProxy -- возвращает новый прокси подписывания клиента на топик
|
|
|
-func NewClientProxy(name alias.ClientName, sample alias.TopicName) (*ClientProxy, error) {
|
|
|
|
|
- log.Printf("NewClientProxy(): name=%q, sample=%q\n", name, sample)
|
|
|
|
|
- if name == "" {
|
|
|
|
|
- return nil, fmt.Errorf("NewClientProxy(): name is empty")
|
|
|
|
|
|
|
+func NewClientProxy(req *netapi.SubscribeRequest) (*ClientProxy, error) {
|
|
|
|
|
+
|
|
|
|
|
+ { // Предусловия
|
|
|
|
|
+ if req == nil {
|
|
|
|
|
+ return nil, fmt.Errorf("NewClientProxy(): SubscribeRequest==nil")
|
|
|
|
|
+ }
|
|
|
|
|
+ if req.ClientName == "" {
|
|
|
|
|
+ return nil, fmt.Errorf("NewClientProxy(): name is empty")
|
|
|
|
|
+ }
|
|
|
|
|
+ if req.Sample == "" {
|
|
|
|
|
+ return nil, fmt.Errorf("NewClientProxy(): sample is empty")
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
+ log.Printf("NewClientProxy(): name=%q, sample=%q\n", req.ClientName, req.Sample)
|
|
|
suffix := "_" + alias.ClientName(fmt.Sprint(time.Now().UnixMilli()))
|
|
suffix := "_" + alias.ClientName(fmt.Sprint(time.Now().UnixMilli()))
|
|
|
sf := &ClientProxy{
|
|
sf := &ClientProxy{
|
|
|
- name: name + suffix,
|
|
|
|
|
- sample: sample,
|
|
|
|
|
|
|
+ name: alias.ClientName(req.ClientName) + suffix,
|
|
|
|
|
+ sample: alias.TopicName(req.Sample),
|
|
|
chMsg: make(chan *netapi.TopicMsg, 10),
|
|
chMsg: make(chan *netapi.TopicMsg, 10),
|
|
|
isWork: true,
|
|
isWork: true,
|
|
|
}
|
|
}
|