filecluster 0.4.13 → 0.4.14
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/fc/base.rb +18 -3
- data/lib/fc/item.rb +1 -0
- data/lib/fc/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 682a63b1d5a1315b249718bc596d4297ceecd7aa
|
4
|
+
data.tar.gz: f212b750a964e94e454f2a2163359334ec1cc898
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 228b7124186c2bac6921b6a4e286c9e87f36d0352dfc842e2c1c4090978cca84a1f9a5b6cd9aff2706dcf9f793f8fb98f03ea68856c7fc73e986d5a72756b78f
|
7
|
+
data.tar.gz: 9d95e2fe21d4dd036451019d28783102f2098462afd8e34f8dd29a23d4de235043c413cea82dabda56c510ea882641d85eb21750f138e6219ce45f61c03dbcf0
|
data/lib/fc/base.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
module FC
|
4
4
|
class DbBase
|
5
|
-
attr_accessor :id, :database_fields
|
5
|
+
attr_accessor :id, :database_fields, :additional_fields
|
6
6
|
|
7
7
|
class << self
|
8
8
|
attr_accessor :table_name, :table_fields
|
@@ -12,6 +12,7 @@ module FC
|
|
12
12
|
self.class.table_fields.each {|key| self.send("#{key}=", params[key] || params[key.to_sym]) }
|
13
13
|
@id = (params["id"] || params[:id]).to_i if params["id"] || params[:id]
|
14
14
|
@database_fields = params[:database_fields] || {}
|
15
|
+
@additional_fields = params[:additional_fields] || {}
|
15
16
|
end
|
16
17
|
|
17
18
|
def self.table_name
|
@@ -29,8 +30,17 @@ module FC
|
|
29
30
|
# make instance on fields hash
|
30
31
|
def self.create_from_fiels(data)
|
31
32
|
# use only defined in set_table fields
|
32
|
-
database_fields = data.select{|key, val| self.table_fields.include?(key.to_s)}
|
33
|
-
|
33
|
+
#database_fields = data.select{|key, val| self.table_fields.include?(key.to_s)}
|
34
|
+
additional_fields = {}
|
35
|
+
database_fields = {}
|
36
|
+
data.each do |key, val|
|
37
|
+
if self.table_fields.include?(key.to_s)
|
38
|
+
database_fields[key] = val
|
39
|
+
elsif key != 'id'
|
40
|
+
additional_fields[key.to_sym] = val
|
41
|
+
end
|
42
|
+
end
|
43
|
+
self.new(database_fields.merge({:id => data["id"].to_s, :database_fields => database_fields, :additional_fields => additional_fields}))
|
34
44
|
end
|
35
45
|
|
36
46
|
# get element by id
|
@@ -61,6 +71,11 @@ module FC
|
|
61
71
|
fields << "#{key}=#{val ? (val.class == String ? "'#{FC::DB.connect.escape(val)}'" : val.to_i) : 'NULL'}"
|
62
72
|
end
|
63
73
|
end
|
74
|
+
@additional_fields.each do |key, val|
|
75
|
+
val = 1 if val == true
|
76
|
+
val = 0 if val == false
|
77
|
+
fields << "#{key}=#{val ? (val.class == String ? "'#{FC::DB.connect.escape(val)}'" : val.to_i) : 'NULL'}"
|
78
|
+
end
|
64
79
|
if fields.length > 0
|
65
80
|
sql << fields.join(',')
|
66
81
|
sql << " WHERE id=#{@id.to_i}" if @id
|
data/lib/fc/item.rb
CHANGED
@@ -10,6 +10,7 @@ module FC
|
|
10
10
|
# Additional options:
|
11
11
|
# :replace=true - replace item if it exists
|
12
12
|
# :remove_local=true - delete local_path file/dir after add
|
13
|
+
# :additional_fields - hash of additional FC:Item fields
|
13
14
|
# If item_name is part of local_path it processed as inplace - local_path is valid path to the item for policy
|
14
15
|
def self.create_from_local(local_path, item_name, policy, options={})
|
15
16
|
raise 'Path not exists' unless File.exists?(local_path)
|
data/lib/fc/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: filecluster
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.14
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- sh
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-07-
|
11
|
+
date: 2015-07-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mysql2
|