本文整理汇总了Golang中datawriter/writer.NimbusioWriter类的典型用法代码示例。如果您正苦于以下问题:Golang NimbusioWriter类的具体用法?Golang NimbusioWriter怎么用?Golang NimbusioWriter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了NimbusioWriter类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: handleFinishConjoinedArchive
func handleFinishConjoinedArchive(message types.Message,
nimbusioWriter writer.NimbusioWriter,
replyChan chan<- *reply.ReplyMessage) {
var conjoined msg.Conjoined
var err error
conjoined, err = msg.UnmarshalConjoined(message.Marshalled)
if err != nil {
fog.Error("UnmarshalConjoined failed %s", err)
return
}
replyMessage := reply.NewReplyMessage("finish-conjoined-archive", message.ID,
conjoined.UserRequestID, conjoined.ReturnAddress)
lgr := logger.NewLogger(conjoined.UserRequestID, conjoined.UnifiedID,
0, 0, conjoined.Key)
lgr.Info("finish-conjoined-archive (%d)", conjoined.CollectionID)
if err = nimbusioWriter.FinishConjoinedArchive(conjoined); err != nil {
lgr.Error("StartConjoinedArchive: %s", err)
replyMessage.Error("error", err.Error())
replyChan <- replyMessage
return
}
replyMessage.Success()
replyChan <- replyMessage
return
}
开发者ID:HackLinux,项目名称:nimbus.io,代码行数:31,代码来源:message_handler.go
示例2: handleArchiveKeyCancel
func handleArchiveKeyCancel(message types.Message,
nimbusioWriter writer.NimbusioWriter,
replyChan chan<- *reply.ReplyMessage) {
var archiveKeyCancel msg.ArchiveKeyCancel
var err error
archiveKeyCancel, err = msg.UnmarshalArchiveKeyCancel(message.Marshalled)
if err != nil {
fog.Error("UnmarshalArchiveKeyCancel failed %s", err)
return
}
replyMessage := reply.NewReplyMessage("archive-key-cancel", message.ID,
archiveKeyCancel.UserRequestID, archiveKeyCancel.ReturnAddress)
lgr := logger.NewLogger(archiveKeyCancel.UserRequestID, archiveKeyCancel.UnifiedID,
archiveKeyCancel.ConjoinedPart, archiveKeyCancel.SegmentNum, "")
lgr.Info("archive-key-cancel")
if err = nimbusioWriter.CancelSegment(archiveKeyCancel); err != nil {
lgr.Error("CancelSegment: %s", err)
replyMessage.Error("error", err.Error())
replyChan <- replyMessage
return
}
replyMessage.Success()
replyChan <- replyMessage
return
}
开发者ID:HackLinux,项目名称:nimbus.io,代码行数:31,代码来源:message_handler.go
示例3: handleDestroyKey
func handleDestroyKey(message types.Message,
nimbusioWriter writer.NimbusioWriter,
replyChan chan<- *reply.ReplyMessage) {
var destroyKey msg.DestroyKey
var err error
destroyKey, err = msg.UnmarshalDestroyKey(message.Marshalled)
if err != nil {
fog.Error("UnmarshalDestroyKey failed %s", err)
return
}
replyMessage := reply.NewReplyMessage("destroy-key", message.ID,
destroyKey.UserRequestID, destroyKey.ReturnAddress)
lgr := logger.NewLogger(destroyKey.UserRequestID, destroyKey.UnifiedID,
destroyKey.ConjoinedPart, destroyKey.SegmentNum, destroyKey.Key)
lgr.Info("archive-key-cancel")
if err = nimbusioWriter.DestroyKey(destroyKey); err != nil {
lgr.Error("DestroyKey: %s", err)
replyMessage.Error("error", err.Error())
replyChan <- replyMessage
return
}
replyMessage.Success()
replyChan <- replyMessage
return
}
开发者ID:HackLinux,项目名称:nimbus.io,代码行数:31,代码来源:message_handler.go
示例4: handleArchiveKeyNext
func handleArchiveKeyNext(message types.Message,
nimbusioWriter writer.NimbusioWriter,
replyChan chan<- *reply.ReplyMessage) {
var archiveKeyNext msg.ArchiveKeyNext
var md5Digest []byte
var err error
archiveKeyNext, err = msg.UnmarshalArchiveKeyNext(message.Marshalled)
if err != nil {
fog.Error("UnmarshalArchiveKeyNext failed %s", err)
return
}
replyMessage := reply.NewReplyMessage("archive-key-final", message.ID,
archiveKeyNext.UserRequestID, archiveKeyNext.ReturnAddress)
lgr := logger.NewLogger(archiveKeyNext.UserRequestID, archiveKeyNext.UnifiedID,
archiveKeyNext.ConjoinedPart, archiveKeyNext.SegmentNum, archiveKeyNext.Key)
lgr.Info("archive-key-Next")
if archiveKeyNext.SegmentSize != uint64(len(message.Data)) {
lgr.Error("size mismatch (%d != %d)", archiveKeyNext.SegmentSize,
len(message.Data))
replyMessage.Error("size-mismatch", "segment size does not match expected value")
replyChan <- replyMessage
return
}
md5Digest, err = base64.StdEncoding.DecodeString(archiveKeyNext.EncodedSegmentMD5Digest)
if err != nil {
lgr.Error("base64.StdEncoding.DecodeString %s", err)
replyMessage.Error("base64", "base64.StdEncoding.DecodeString")
replyChan <- replyMessage
return
}
if !MD5DigestMatches(message.Data, md5Digest) {
lgr.Error("md5 mismatch")
replyMessage.Error("md5-mismatch", "segment md5 does not match expected value")
replyChan <- replyMessage
return
}
_, err = nimbusioWriter.StoreSequence(archiveKeyNext.UserRequestID,
archiveKeyNext.Segment,
archiveKeyNext.Sequence, message.Data)
if err != nil {
lgr.Error("StoreSequence: %s", err)
replyMessage.Error("error", err.Error())
replyChan <- replyMessage
return
}
replyMessage.Success()
replyChan <- replyMessage
return
}
开发者ID:HackLinux,项目名称:nimbus.io,代码行数:58,代码来源:message_handler.go
示例5: handleArchiveKeyEntire
func handleArchiveKeyEntire(message types.Message,
nimbusioWriter writer.NimbusioWriter,
replyChan chan<- *reply.ReplyMessage) {
var archiveKeyEntire msg.ArchiveKeyEntire
var md5Digest []byte
var err error
var valueFileID uint32
archiveKeyEntire, err = msg.UnmarshalArchiveKeyEntire(message.Marshalled)
if err != nil {
fog.Error("UnmarshalArchiveKeyEntire failed %s", err)
return
}
replyMessage := reply.NewReplyMessage("archive-key-final", message.ID,
archiveKeyEntire.UserRequestID, archiveKeyEntire.ReturnAddress)
lgr := logger.NewLogger(archiveKeyEntire.UserRequestID, archiveKeyEntire.UnifiedID,
archiveKeyEntire.ConjoinedPart, archiveKeyEntire.SegmentNum, archiveKeyEntire.Key)
lgr.Info("archive-key-entire")
if archiveKeyEntire.SegmentSize != uint64(len(message.Data)) {
lgr.Error("size mismatch (%d != %d)", archiveKeyEntire.SegmentSize,
len(message.Data))
replyMessage.Error("size-mismatch", "segment size does not match expected value")
replyChan <- replyMessage
return
}
md5Digest, err = base64.StdEncoding.DecodeString(archiveKeyEntire.EncodedSegmentMD5Digest)
if err != nil {
lgr.Error("base64.StdEncoding.DecodeString %s", err)
replyMessage.Error("base64", "base64.StdEncoding.DecodeString")
replyChan <- replyMessage
return
}
if !MD5DigestMatches(message.Data, md5Digest) {
lgr.Error("md5 mismatch")
replyMessage.Error("md5-mismatch", "segment md5 does not match expected value")
replyChan <- replyMessage
return
}
err = nimbusioWriter.StartSegment(archiveKeyEntire.UserRequestID, archiveKeyEntire.Segment,
archiveKeyEntire.NodeNames)
if err != nil {
lgr.Error("StartSegment: %s", err)
replyMessage.Error("error", err.Error())
replyChan <- replyMessage
return
}
valueFileID, err = nimbusioWriter.StoreSequence(
archiveKeyEntire.UserRequestID,
archiveKeyEntire.Segment,
archiveKeyEntire.Sequence, message.Data)
if err != nil {
lgr.Error("StoreSequence: %s", err)
replyMessage.Error("error", err.Error())
replyChan <- replyMessage
return
}
metaData := msg.GetMetaFromJSON(message.Marshalled)
err = nimbusioWriter.FinishSegment(archiveKeyEntire.UserRequestID,
archiveKeyEntire.Segment,
archiveKeyEntire.File,
metaData,
valueFileID)
if err != nil {
lgr.Error("FinishSegment: %s", err)
replyMessage.Error("error", err.Error())
replyChan <- replyMessage
return
}
replyMessage.Success()
replyChan <- replyMessage
return
}
开发者ID:HackLinux,项目名称:nimbus.io,代码行数:83,代码来源:message_handler.go
注:本文中的datawriter/writer.NimbusioWriter类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论