VictoriaFreSh 2020.7.29 → 2020.7.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/victoriafresh.rb +35 -5
- data/victoriafresh.example.rb +3 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e94d9ec30267613093ac035dbe136f079ecc7aef2338fe97102f8ad9e2c28346
|
4
|
+
data.tar.gz: a41b013e49e8c5fc4d581f183b92fb5fdced903da577c13b2c06727b6b9066e1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 00617c1f82c32f5fc5889ad21bfe9edfccd4aa7caa99cbaee2a63db7320bcab155d4aeefd714979668123108ea0016f51844e5dbe26194a98d16ae8b66608fd0
|
7
|
+
data.tar.gz: '05963d89eba36346fad251cc5102e07d13dac19616691fda5d4790bb8f9f210033a65d4efb9143722a93470abb995f1988495ac0990eb92639751666765af840'
|
data/lib/victoriafresh.rb
CHANGED
@@ -1,11 +1,13 @@
|
|
1
1
|
#!/usr/bin/ruby
|
2
2
|
|
3
3
|
require 'pathname'
|
4
|
+
require 'fileutils'
|
5
|
+
|
4
6
|
require File.dirname(__FILE__)+'/VictoriaFreSh/filemessage_pb.rb'
|
5
7
|
|
6
8
|
class VictoriaFresh
|
7
9
|
def releaseFiles(victoriaFreshPackagedFileString, contentString) #释放目录树
|
8
|
-
packagedFile=FileMessage.decode(victoriaFreshPackagedFileString) #解码文件消息对象。
|
10
|
+
packagedFile=Com::Stupidbeauty::Victoriafresh::FileMessage.decode(victoriaFreshPackagedFileString) #解码文件消息对象。
|
9
11
|
|
10
12
|
puts packagedFile #Debug
|
11
13
|
|
@@ -13,15 +15,35 @@ class VictoriaFresh
|
|
13
15
|
end #def releaseFiles(victoriaFreshPackagedFile, contentString) #释放目录树
|
14
16
|
|
15
17
|
def writeFile(pathPrefix, packagedFile, contentString) #写入文件
|
18
|
+
|
19
|
+
timeObject=getTimeObject(packagedFile) #构造时间戳对象
|
20
|
+
|
16
21
|
victoriaFreshData=contentString[packagedFile.file_start_index, packagedFile.file_length] #获取内容
|
17
22
|
|
18
|
-
|
23
|
+
pathToMake=pathPrefix + '/' + packagedFile.name #构造文件名
|
24
|
+
|
25
|
+
victoriaFreshDataFile=File.new(pathToMake , "wb") #数据文件。
|
19
26
|
victoriaFreshDataFile.syswrite(victoriaFreshData) #写入文件。
|
20
27
|
victoriaFreshDataFile.close #关闭文件。
|
21
28
|
|
29
|
+
FileUtils.touch pathToMake, :mtime => timeObject #设置修改时间
|
30
|
+
|
22
31
|
end #writeFile(pathPrefix, packagedFile, contentString) #写入文件
|
23
32
|
|
33
|
+
def getTimeObject(packagedFile) #构造时间戳对象
|
34
|
+
puts packagedFile.timestamp #Debug
|
35
|
+
|
36
|
+
seconds=packagedFile.timestamp.seconds #获取秒数
|
37
|
+
microSeconds=packagedFile.timestamp.nanos/ 1000.0 #获取毫秒数
|
38
|
+
|
39
|
+
timeObject=Time.at(seconds, microSeconds) #构造时间对象
|
40
|
+
|
41
|
+
end #getTimeObject(packagedFile) #构造时间戳对象
|
42
|
+
|
24
43
|
def makeDirectory(pathPrefix, packagedFile) #创建目录
|
44
|
+
timeObject=getTimeObject(packagedFile) #构造时间戳对象
|
45
|
+
|
46
|
+
|
25
47
|
puts 'mkdir' #Debug
|
26
48
|
|
27
49
|
pathToMake=File.join(pathPrefix, packagedFile.name)
|
@@ -34,6 +56,8 @@ class VictoriaFresh
|
|
34
56
|
end #if (Dir.exist?(pathToMake)) #目录已经存在
|
35
57
|
|
36
58
|
|
59
|
+
FileUtils.touch pathToMake, :mtime => timeObject #设置修改时间
|
60
|
+
|
37
61
|
end #makeDirectory(pathPrefix, packagedFile) #创建目录
|
38
62
|
|
39
63
|
def releaseFile( pathPrefix, packagedFile, contentString) #释放一个文件
|
@@ -59,7 +83,11 @@ class VictoriaFresh
|
|
59
83
|
|
60
84
|
def checkOnce(directoryPath,startIndex=0) #打包一个目录树。
|
61
85
|
packagedFile=Com::Stupidbeauty::Victoriafresh::FileMessage.new #创建文件消息对象。
|
62
|
-
|
86
|
+
# packagedFile.sub_files=[] #初始化数组。
|
87
|
+
|
88
|
+
# packagedFile.sub_files=Google::Protobuf::RepeatedField.new(Com::Stupidbeauty::Victoriafresh::FileMessage, []) #初始化数组
|
89
|
+
# packagedFile.sub_files=Google::Protobuf::RepeatedField.new(Google::Protobuf::DescriptorPool.generated_pool.lookup("com.stupidbeauty.victoriafresh.FileMessage").msgclass, []) #初始化数组
|
90
|
+
|
63
91
|
|
64
92
|
directoryPathName=Pathname.new(directoryPath) #构造路径名字对象。
|
65
93
|
|
@@ -74,10 +102,12 @@ class VictoriaFresh
|
|
74
102
|
|
75
103
|
#记录时间戳:
|
76
104
|
mtimeStamp=File.mtime(directoryPath) #获取时间戳
|
77
|
-
puts
|
105
|
+
puts directoryPath #Dbug.
|
78
106
|
puts mtimeStamp #Debug
|
107
|
+
puts mtimeStamp.tv_sec #Debug
|
108
|
+
puts mtimeStamp.tv_nsec #Debug
|
79
109
|
|
80
|
-
packagedFile.timestamp=
|
110
|
+
packagedFile.timestamp=Google::Protobuf::Timestamp.new #时间戳
|
81
111
|
packagedFile.timestamp.seconds=mtimeStamp.tv_sec #设置秒数
|
82
112
|
packagedFile.timestamp.nanos=mtimeStamp.tv_nsec #设置纳秒数
|
83
113
|
|
data/victoriafresh.example.rb
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
# require 'pathname'
|
4
4
|
# require File.dirname(__FILE__)+'/filemessage.pb.rb'
|
5
5
|
require 'victoriafresh'
|
6
|
+
# require File.dirname(__FILE__)+'/lib/victoriafresh'
|
6
7
|
|
7
8
|
if (ARGV.empty? ) #未指定命令行参数。
|
8
9
|
else #指定了命令行参数。
|
@@ -14,7 +15,8 @@ else #指定了命令行参数。
|
|
14
15
|
|
15
16
|
#利用protobuf打包成字节数组:
|
16
17
|
replyByteArray="" #回复时使用的字节数组。
|
17
|
-
|
18
|
+
# victoriaFresh.encode(replyByteArray) #打包成字节数组。
|
19
|
+
replyByteArray=Com::Stupidbeauty::Victoriafresh::FileMessage.encode(victoriaFresh) ##打包成字节数组。
|
18
20
|
|
19
21
|
victoriaFreshFile=File.new("victoriafresh.v","wb") #创建文件。
|
20
22
|
victoriaFreshFile.syswrite(replyByteArray) #写入文件。
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: VictoriaFreSh
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2020.7.
|
4
|
+
version: 2020.7.34
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Hxcan Cai
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-08-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: protobuf
|