c3s 0.4.1 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
data/Manifest CHANGED
@@ -12,4 +12,22 @@ lib/pubsub/nodetracker.rb
12
12
  lib/pubsub/publisher.rb
13
13
  lib/pubsub/subscriber.rb
14
14
  lib/republisher.rb
15
+ pkg/c3s-0.4.1.gem
16
+ pkg/c3s-0.4.1.tar.gz
17
+ pkg/c3s-0.4.1/Manifest
18
+ pkg/c3s-0.4.1/README.rdoc
19
+ pkg/c3s-0.4.1/Rakefile
20
+ pkg/c3s-0.4.1/c3s.gemspec
21
+ pkg/c3s-0.4.1/lib/c3s.rb
22
+ pkg/c3s-0.4.1/lib/c3s_logger.rb
23
+ pkg/c3s-0.4.1/lib/component.rb
24
+ pkg/c3s-0.4.1/lib/component_connection.rb
25
+ pkg/c3s-0.4.1/lib/configreader.rb
26
+ pkg/c3s-0.4.1/lib/databaseadapter.rb
27
+ pkg/c3s-0.4.1/lib/model.rb
28
+ pkg/c3s-0.4.1/lib/pubsub/node.rb
29
+ pkg/c3s-0.4.1/lib/pubsub/nodetracker.rb
30
+ pkg/c3s-0.4.1/lib/pubsub/publisher.rb
31
+ pkg/c3s-0.4.1/lib/pubsub/subscriber.rb
32
+ pkg/c3s-0.4.1/lib/republisher.rb
15
33
  Manifest
data/Rakefile CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
2
2
  require 'rake'
3
3
  require 'echoe'
4
4
 
5
- Echoe.new('c3s', '0.4.1') do |p|
5
+ Echoe.new('c3s', '0.4.2') do |p|
6
6
  p.description = "C3s library gem."
7
7
  p.url = "http://github.com/rikas/c3s"
8
8
  p.author = "Ricardo Otero"
data/c3s.gemspec CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{c3s}
5
- s.version = "0.4.1"
5
+ s.version = "0.4.2"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Ricardo Otero"]
9
- s.date = %q{2010-04-29}
9
+ s.date = %q{2010-09-27}
10
10
  s.description = %q{C3s library gem.}
11
11
  s.email = %q{oterosantos@gmail.com}
12
12
  s.extra_rdoc_files = ["README.rdoc", "lib/c3s.rb", "lib/c3s_logger.rb", "lib/component.rb", "lib/component_connection.rb", "lib/configreader.rb", "lib/databaseadapter.rb", "lib/model.rb", "lib/pubsub/node.rb", "lib/pubsub/nodetracker.rb", "lib/pubsub/publisher.rb", "lib/pubsub/subscriber.rb", "lib/republisher.rb"]
@@ -15,14 +15,14 @@ Gem::Specification.new do |s|
15
15
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "C3s", "--main", "README.rdoc"]
16
16
  s.require_paths = ["lib"]
17
17
  s.rubyforge_project = %q{c3s}
18
- s.rubygems_version = %q{1.3.6}
18
+ s.rubygems_version = %q{1.3.7}
19
19
  s.summary = %q{C3s library gem.}
20
20
 
21
21
  if s.respond_to? :specification_version then
22
22
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
23
23
  s.specification_version = 3
24
24
 
25
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
25
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
26
26
  else
27
27
  end
28
28
  else
data/lib/model.rb CHANGED
@@ -36,6 +36,7 @@ module C3sModel
36
36
  def to_xml(options={})
37
37
  xml = first_element(options)
38
38
  self.attributes.each do |key, val|
39
+ # Don't include ignored attributes or foreign keys
39
40
  if !IGNORE_ATTR.include?(key) && !key.match(/.+_id/)
40
41
  xml.add REXML::Element.new(key).add_text(val.to_s)
41
42
  end
@@ -37,6 +37,7 @@ module C3s
37
37
  def create_node(nodename, options={})
38
38
  return if node_exists?(nodename)
39
39
  config = Jabber::PubSub::NodeConfig.new
40
+ config = nil if !options || options.empty? # avoid creation of <configure/>
40
41
 
41
42
  if options[:father]
42
43
  config.options = config.options.merge({'pubsub#collection' => options[:father]})
@@ -68,6 +69,7 @@ module C3s
68
69
  $LOG.debug("Creating collection node #{name}...")
69
70
  $LOG.debug("Node config: #{config.options.inspect}")
70
71
  return if node_exists?(name)
72
+
71
73
  node = @pubsub.create_collection_node(name, config)
72
74
  end
73
75
 
@@ -78,11 +80,16 @@ module C3s
78
80
  # config:: [PubSub::NodeConfig] node configuration
79
81
  def create_leaf_node(name, config)
80
82
  $LOG.debug("Creating leaf node #{name}")
81
- $LOG.debug("Node config: #{config.options.inspect}")
83
+ $LOG.debug("Node config: #{config.options.inspect}") if config
82
84
  return if node_exists?(name)
85
+
83
86
  node = @pubsub.create_node(name, config)
84
87
  end
85
88
 
89
+ ##
90
+ # Grants node permissions to user admin@domain so that we
91
+ # can have an admin that can edit/delete every node.
92
+ # node:: [Pubsub::Node] the node to grant permissions to
86
93
  def grant_owner_to_admin(node)
87
94
  return unless node
88
95
  @pubsub.set_affiliations(node, "admin@#{@client.config['url']}", 'owner')
data/lib/republisher.rb CHANGED
@@ -59,10 +59,11 @@ module C3s
59
59
  $LOG.debug("Node built: #{c3snode.to_s}")
60
60
  c3snode.provider = config['name'] # TODO - assuming that provider_name.eql?(pubsub_root_node)
61
61
  $LOG.debug("Call republish() from child")
62
-
63
-
62
+
64
63
  Thread.abort_on_exception = true
65
64
  t = Thread.new do
65
+ # This must be implemented on the republisher
66
+ # because the strategy may vary from component to component.
66
67
  republish(c3snode, item)
67
68
  end
68
69
  t.join
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: c3s
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 11
4
5
  prerelease: false
5
6
  segments:
6
7
  - 0
7
8
  - 4
8
- - 1
9
- version: 0.4.1
9
+ - 2
10
+ version: 0.4.2
10
11
  platform: ruby
11
12
  authors:
12
13
  - Ricardo Otero
@@ -14,7 +15,7 @@ autorequire:
14
15
  bindir: bin
15
16
  cert_chain: []
16
17
 
17
- date: 2010-04-29 00:00:00 +01:00
18
+ date: 2010-09-27 00:00:00 +01:00
18
19
  default_executable:
19
20
  dependencies: []
20
21
 
@@ -70,16 +71,20 @@ rdoc_options:
70
71
  require_paths:
71
72
  - lib
72
73
  required_ruby_version: !ruby/object:Gem::Requirement
74
+ none: false
73
75
  requirements:
74
76
  - - ">="
75
77
  - !ruby/object:Gem::Version
78
+ hash: 3
76
79
  segments:
77
80
  - 0
78
81
  version: "0"
79
82
  required_rubygems_version: !ruby/object:Gem::Requirement
83
+ none: false
80
84
  requirements:
81
85
  - - ">="
82
86
  - !ruby/object:Gem::Version
87
+ hash: 11
83
88
  segments:
84
89
  - 1
85
90
  - 2
@@ -87,7 +92,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
87
92
  requirements: []
88
93
 
89
94
  rubyforge_project: c3s
90
- rubygems_version: 1.3.6
95
+ rubygems_version: 1.3.7
91
96
  signing_key:
92
97
  specification_version: 3
93
98
  summary: C3s library gem.