func (s *StoreClientImpl) PurgeMessages(req *store.PurgeMessagesRequest) (*store.PurgeMessagesResult_, error) {
	ctx, cancel := tcthrift.NewContext(2 * time.Second)
	defer cancel()
	return s.client.PurgeMessages(ctx, req)
}
PurgeMessages seals an extent on the specified store
package storehost
import (
	"fmt"
	"time"
	"github.com/uber/cherami-server/common"
	"github.com/uber/cherami-thrift/.generated/go/store"
	tchannel "github.com/uber/tchannel-go"
	tcthrift "github.com/uber/tchannel-go/thrift"
)
type StoreClientImpl struct {
	connection *tchannel.Channel
	client     store.TChanBStore
}
func NewClient(storeUUID, hostAddr string) (*StoreClientImpl, error) {
	ch, err := tchannel.NewChannel(fmt.Sprintf("storehost-client-%v", storeUUID), nil)
	if err != nil {
		return nil, err
	}
	tClient := tcthrift.NewClient(ch, common.StoreServiceName, &tcthrift.ClientOptions{
		HostPort: hostAddr,
	})
	client := store.NewTChanBStoreClient(tClient)
	return &StoreClientImpl{
		connection: ch,
		client:     client,
	}, nil
}
func (s *StoreClientImpl) Close() {
	s.connection.Close()
}
func (s *StoreClientImpl) ReadMessages(req *store.ReadMessagesRequest) (*store.ReadMessagesResult_, error) {
	ctx, cancel := tcthrift.NewContext(2 * time.Second)
	defer cancel()
	return s.client.ReadMessages(ctx, req)
}
func (s *StoreClientImpl) GetAddressFromTimestamp(req *store.GetAddressFromTimestampRequest) (*store.GetAddressFromTimestampResult_, error) {
	ctx, cancel := tcthrift.NewContext(2 * time.Second)
	defer cancel()
	return s.client.GetAddressFromTimestamp(ctx, req)
}
func (s *StoreClientImpl) SealExtent(req *store.SealExtentRequest) error {
	ctx, cancel := tcthrift.NewContext(2 * time.Second)
	defer cancel()
	return s.client.SealExtent(ctx, req)
}