filecluster 0.4.13 → 0.4.14

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c2a7e2b03e88697fb0e2123c32db16dd8a266b40
4
- data.tar.gz: 323c7c1efaaaef5e84eafdb87c0d55cf04c1b827
3
+ metadata.gz: 682a63b1d5a1315b249718bc596d4297ceecd7aa
4
+ data.tar.gz: f212b750a964e94e454f2a2163359334ec1cc898
5
5
  SHA512:
6
- metadata.gz: 15a70282e51cd4d7571920c2c458e17c9402148593004ac7b48777c976e3c635f79fac3d732c6a4811181f4a1219a74409bd1e1bd2159faa10f6e411922adcb9
7
- data.tar.gz: 35d9f0727102c900cbfaffab42e6ad1de334b6ef795c055f6f09c7c2ae53c6d4202c41e116d9872dfffe6cc39d116412898cc90dd8b567bdfd1dcd9b381c4410
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
- self.new(database_fields.merge({:id => data["id"].to_s, :database_fields => database_fields}))
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
@@ -1,3 +1,3 @@
1
1
  module FC
2
- VERSION = "0.4.13"
2
+ VERSION = "0.4.14"
3
3
  end
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.13
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-27 00:00:00.000000000 Z
11
+ date: 2015-07-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mysql2