micon 0.1.1 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -1,56 +1,11 @@
1
- require 'rake'
2
- require 'spec/rake/spectask'
1
+ require 'rake_ext'
3
2
 
4
- Dir.chdir File.dirname(__FILE__)
3
+ gem_spec(
4
+ :name => "micon",
5
+ :version => "0.1.4",
6
+ :summary => "Assembles and manages pieces of your application",
7
+ :dependencies => %w(),
5
8
 
6
- # Specs
7
- task :default => :spec
8
-
9
- Spec::Rake::SpecTask.new('spec') do |t|
10
- t.spec_files = FileList["spec/**/*_spec.rb"].select{|f| f !~ /\/_/}
11
- t.libs = ['lib'].collect{|f| "#{File.dirname __FILE__}/#{f}"}
12
- end
13
-
14
- # Gem
15
- require 'rake/clean'
16
- require 'rake/gempackagetask'
17
- require 'fileutils'
18
-
19
- spec = Gem::Specification.new do |s|
20
- s.name = "micon"
21
- s.version = "0.1.1"
22
- s.summary = "Micro Container assembles and manages pieces of your application"
23
- s.description = "Micro Container assembles and manages pieces of your application"
24
- s.author = "Alexey Petrushin"
25
- s.homepage = "http://github.com/alexeypetrushin/micon"
26
- s.platform = Gem::Platform::RUBY
27
- s.has_rdoc = true
28
- s.files = (%w{Rakefile readme.md} + Dir.glob("{lib,spec}/**/*"))
29
- # s.add_dependency "ruby-ext"
30
- s.require_path = "lib"
31
- end
32
-
33
- PACKAGE_DIR = "#{File.expand_path File.dirname(__FILE__)}/build"
34
-
35
- Rake::GemPackageTask.new(spec) do |p|
36
- package_dir = PACKAGE_DIR
37
- # FileUtils.mkdir package_dir unless File.exist? package_dir
38
- p.need_tar = true if RUBY_PLATFORM !~ /mswin/
39
- p.need_zip = true
40
- p.package_dir = package_dir
41
- end
42
-
43
- # CLEAN.include [ 'pkg', '*.gem']
44
-
45
- task :push do
46
- dir = Dir.chdir PACKAGE_DIR do
47
- gem_file = Dir.glob("micon*.gem").first
48
- system "gem push #{gem_file}"
49
- end
50
- end
51
-
52
- task :clean do
53
- system "rm -r #{PACKAGE_DIR}"
54
- end
55
-
56
- task :release => [:gem, :push, :clean]
9
+ :author => "Alexey Petrushin",
10
+ :homepage => "http://github.com/alexeypetrushin/jquery_client"
11
+ )
@@ -16,6 +16,8 @@ module Micon
16
16
  @initializers.clear
17
17
  @before.clear
18
18
  @after.clear
19
+ @before_scope.clear
20
+ @after_scope.clear
19
21
  end
20
22
  end
21
23
 
@@ -25,6 +27,8 @@ module Micon
25
27
  @initializers.delete key
26
28
  @before.delete key
27
29
  @after.delete key
30
+ @before_scope.delete key
31
+ @after_scope.delete key
28
32
  end
29
33
  end
30
34
 
data/readme.md CHANGED
@@ -1,10 +1,10 @@
1
- # Micro Container - assembles and manages pieces of your application
1
+ # Assembles and manages pieces of your application
2
2
 
3
3
  Micon is infrastructural component, invisible to user and it's main goal is to simplify development. It reduces complex monolithic application to set of simple low coupled components.
4
4
 
5
5
  Concentrate on business logic and interfaces and Micon will provide automatic configuration, life cycle management and dependency resolving.
6
6
 
7
- Technically it's like [IoC][ioc] container managing components, callbacks, scopes and bijections, inspired by Spring and JBoss Seam.
7
+ Technically it's [IoC][ioc] like framework with components, callbacks, scopes and bijections, inspired by Spring and JBoss Seam.
8
8
 
9
9
  ## Usage
10
10
 
@@ -32,12 +32,12 @@ Let's suppose you are building the Ruby on Rails clone, there are lots of module
32
32
  end
33
33
  end
34
34
 
35
- # callbacks, we need to parse routes right after environment will be initialized
35
+ # callbacks, we need to parse routes right after environment is initialized
36
36
  app.after :environment do
37
37
  app[:router].parse '/config/routes.rb'
38
38
  end
39
39
 
40
- # dynamic components, will be created and destroyed for every request
40
+ # dynamic components, will be created and destroyed for every request
41
41
  class Request
42
42
  register_as :request, :scope => :request
43
43
  end
@@ -48,9 +48,8 @@ Let's suppose you are building the Ruby on Rails clone, there are lots of module
48
48
 
49
49
  def do_business
50
50
  # now we can use injected component
51
- logger.info "routes parsed"
52
51
  do_something_with request
53
- logger.info 'well done'
52
+ logger.info 'done'
54
53
  end
55
54
 
56
55
  def do_something_with request; end
@@ -1,5 +1,5 @@
1
- dir = File.expand_path(File.dirname(__FILE__))
2
- require "#{dir}/helper"
1
+ require 'rspec_ext'
2
+ require "#{__FILE__.dirname}/helper"
3
3
 
4
4
  describe "Callbacks" do
5
5
  before :each do
@@ -1,5 +1,5 @@
1
- dir = File.expand_path(File.dirname(__FILE__))
2
- require "#{dir}/helper"
1
+ require 'rspec_ext'
2
+ require "#{__FILE__.dirname}/helper"
3
3
 
4
4
  describe "Micon custom scope" do
5
5
  before :each do
data/spec/helper.rb CHANGED
@@ -1,6 +1,4 @@
1
- lib_dir = "#{File.expand_path("#{File.dirname(__FILE__)}/..")}/lib"
2
- $LOAD_PATH << lib_dir if lib_dir
1
+ lib_dir = "#{__FILE__.parent_dirname}/lib"
2
+ $LOAD_PATH << lib_dir unless $LOAD_PATH.include? lib_dir
3
3
 
4
- require "micon"
5
-
6
- require 'spec'
4
+ require "micon"
data/spec/managed_spec.rb CHANGED
@@ -1,5 +1,5 @@
1
- dir = File.expand_path(File.dirname(__FILE__))
2
- require "#{dir}/helper"
1
+ require 'rspec_ext'
2
+ require "#{__FILE__.dirname}/helper"
3
3
 
4
4
  describe "Micon Managed" do
5
5
  before :all do
@@ -1,5 +1,5 @@
1
- dir = File.expand_path(File.dirname(__FILE__))
2
- require "#{dir}/helper"
1
+ require 'rspec_ext'
2
+ require "#{__FILE__.dirname}/helper"
3
3
 
4
4
  describe "Micelaneous" do
5
5
  before :each do
@@ -1,5 +1,5 @@
1
- dir = File.expand_path(File.dirname(__FILE__))
2
- require "#{dir}/helper"
1
+ require 'rspec_ext'
2
+ require "#{__FILE__.dirname}/helper"
3
3
 
4
4
  describe "Micon nested custom scope" do
5
5
  before :each do
@@ -1,5 +1,5 @@
1
- dir = File.expand_path(File.dirname(__FILE__))
2
- require "#{dir}/helper"
1
+ require 'rspec_ext'
2
+ require "#{__FILE__.dirname}/helper"
3
3
 
4
4
  describe "Micon Overview" do
5
5
  it "sample" do
@@ -14,24 +14,24 @@ describe "Micon Overview" do
14
14
 
15
15
  class Logger
16
16
  register_as :logger
17
-
17
+
18
18
  def info msg; end
19
19
  end
20
20
 
21
21
  class Router
22
22
  register_as :router
23
-
23
+
24
24
  def parse rote_filename
25
25
  # do something
26
26
  end
27
27
  end
28
28
 
29
- # callbacks, we need to parse routes right after environment will be initialized
29
+ # callbacks, we need to parse routes right after environment is initialized
30
30
  app.after :environment do
31
31
  app[:router].parse '/config/routes.rb'
32
32
  end
33
33
 
34
- # dynamic components, will be created and destroyed for every request
34
+ # dynamic components, will be created and destroyed for every request
35
35
  class Request
36
36
  register_as :request, :scope => :request
37
37
  end
@@ -42,11 +42,10 @@ describe "Micon Overview" do
42
42
 
43
43
  def do_business
44
44
  # now we can use injected component
45
- logger.info "routes parsed"
46
45
  do_something_with request
47
- logger.info 'well done'
46
+ logger.info 'done'
48
47
  end
49
-
48
+
50
49
  def do_something_with request; end
51
50
  end
52
51
 
@@ -59,7 +58,7 @@ describe "Micon Overview" do
59
58
  end
60
59
  end
61
60
  end
62
-
61
+
63
62
  RackAdapter.new.call({})
64
63
  end
65
64
  end
@@ -1,5 +1,5 @@
1
- dir = File.expand_path(File.dirname(__FILE__))
2
- require "#{dir}/helper"
1
+ require 'rspec_ext'
2
+ require "#{__FILE__.dirname}/helper"
3
3
 
4
4
  describe "Application and Instance scopes" do
5
5
  before :each do
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: micon
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
4
+ hash: 19
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 1
10
- version: 0.1.1
9
+ - 4
10
+ version: 0.1.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - Alexey Petrushin
@@ -15,11 +15,11 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-10-11 00:00:00 +04:00
18
+ date: 2010-10-13 00:00:00 +04:00
19
19
  default_executable:
20
20
  dependencies: []
21
21
 
22
- description: Micro Container assembles and manages pieces of your application
22
+ description:
23
23
  email:
24
24
  executables: []
25
25
 
@@ -43,10 +43,9 @@ files:
43
43
  - spec/micelaneous_spec.rb
44
44
  - spec/nested_custom_scope_spec.rb
45
45
  - spec/overview_spec.rb
46
- - spec/spec.opts
47
46
  - spec/static_scope_spec.rb
48
47
  has_rdoc: true
49
- homepage: http://github.com/alexeypetrushin/micon
48
+ homepage: http://github.com/alexeypetrushin/jquery_client
50
49
  licenses: []
51
50
 
52
51
  post_install_message:
@@ -78,6 +77,6 @@ rubyforge_project:
78
77
  rubygems_version: 1.3.7
79
78
  signing_key:
80
79
  specification_version: 3
81
- summary: Micro Container assembles and manages pieces of your application
80
+ summary: Assembles and manages pieces of your application
82
81
  test_files: []
83
82
 
data/spec/spec.opts DELETED
@@ -1,2 +0,0 @@
1
- --color
2
- --reverse