當前位置: 首頁>>代碼示例>>Golang>>正文


Golang pfs.ReplicaAPIClient類代碼示例

本文整理匯總了Golang中github.com/pachyderm/pachyderm/src/pfs.ReplicaAPIClient的典型用法代碼示例。如果您正苦於以下問題:Golang ReplicaAPIClient類的具體用法?Golang ReplicaAPIClient怎麽用?Golang ReplicaAPIClient使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了ReplicaAPIClient類的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: PushDiff

func PushDiff(replicaAPIClient pfs.ReplicaAPIClient, repoName string, commitID string, shard uint64, reader io.Reader) (retErr error) {
	pushDiffClient, err := replicaAPIClient.PushDiff(context.Background())
	if err != nil {
		return err
	}
	defer func() {
		if _, err := pushDiffClient.CloseAndRecv(); err != nil && retErr != nil {
			retErr = err
		}
	}()
	request := pfs.PushDiffRequest{
		Commit: &pfs.Commit{
			Repo: &pfs.Repo{
				Name: repoName,
			},
			Id: commitID,
		},
		Shard: shard,
	}
	for {
		value := make([]byte, chunkSize)
		size, err := reader.Read(value)
		if err != nil {
			if err == io.EOF {
				break
			}
			return err
		}
		request.Value = value[0:size]
		if err = pushDiffClient.Send(&request); err != nil {
			return err
		}
	}
	return nil
}
開發者ID:klucar,項目名稱:pachyderm,代碼行數:35,代碼來源:pfsutil.go

示例2: PullDiff

func PullDiff(replicaAPIClient pfs.ReplicaAPIClient, repoName string, commitID string, shard uint64, writer io.Writer) error {
	apiPullDiffClient, err := replicaAPIClient.PullDiff(
		context.Background(),
		&pfs.PullDiffRequest{
			Commit: &pfs.Commit{
				Repo: &pfs.Repo{
					Name: repoName,
				},
				Id: commitID,
			},
			Shard: shard,
		},
	)
	if err != nil {
		return err
	}
	if err := protostream.WriteFromStreamingBytesClient(apiPullDiffClient, writer); err != nil {
		return err
	}
	return nil
}
開發者ID:klucar,項目名稱:pachyderm,代碼行數:21,代碼來源:pfsutil.go


注:本文中的github.com/pachyderm/pachyderm/src/pfs.ReplicaAPIClient類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。