コード例 #1
0
ファイル: subUpdate.go プロジェクト: wxdublin/Dominator
func compareFile(request *subproto.UpdateRequest, state *state,
	subEntry interface{}, requiredFile *filesystem.File,
	parentName string) {
	debugFilename := path.Join(parentName, requiredFile.Name)
	if subFile, ok := subEntry.(*filesystem.File); ok {
		if requiredInode, ok :=
			state.subInodeToRequiredInode[subFile.InodeNumber]; ok {
			if requiredInode != requiredFile.InodeNumber {
				fmt.Printf("Different links: %s...\n", debugFilename) // HACK
			}
		} else {
			state.subInodeToRequiredInode[subFile.InodeNumber] =
				requiredFile.InodeNumber
		}
		if filesystem.CompareInodes(subFile.Inode(), requiredFile.Inode(),
			os.Stdout) {
			return
		}
		fmt.Printf("Different file: %s...\n", debugFilename) // HACK
	} else {
		fmt.Printf("Add file: %s...\n", debugFilename) // HACK
	}
	// TODO(rgooch): Delete entry and replace.
}