github.com/cloud-green/juju@v0.0.0-20151002100041-a00291338d3d/apiserver/metricsender/nopsender.go (about)

     1  // Copyright 2014 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package metricsender
     5  
     6  import (
     7  	"github.com/juju/utils"
     8  
     9  	"github.com/juju/juju/apiserver/metricsender/wireformat"
    10  )
    11  
    12  // NopSender is a sender that acts like everything worked fine
    13  // But doesn't do anything.
    14  type NopSender struct {
    15  }
    16  
    17  // Implement the send interface, act like everything is fine.
    18  func (n NopSender) Send(batches []*wireformat.MetricBatch) (*wireformat.Response, error) {
    19  	var resp = make(wireformat.EnvironmentResponses)
    20  	for _, batch := range batches {
    21  		resp.Ack(batch.EnvUUID, batch.UUID)
    22  	}
    23  	uuid, err := utils.NewUUID()
    24  	if err != nil {
    25  		return nil, err
    26  	}
    27  	return &wireformat.Response{UUID: uuid.String(), EnvResponses: resp}, nil
    28  }