fluent_command_builder 0.8.7 → 0.8.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. data/lib/fluent_command_builder/command_builder_factory.rb +43 -0
  2. data/lib/fluent_command_builder/command_builders/appcfg_python.rb +3 -1
  3. data/lib/fluent_command_builder/command_builders/appcfg_python_16.rb +10 -8
  4. data/lib/fluent_command_builder/command_builders/appcfg_python_17.rb +10 -8
  5. data/lib/fluent_command_builder/command_builders/aspnet_compiler.rb +3 -1
  6. data/lib/fluent_command_builder/command_builders/aspnet_compiler_20.rb +10 -8
  7. data/lib/fluent_command_builder/command_builders/aspnet_compiler_40.rb +10 -8
  8. data/lib/fluent_command_builder/command_builders/bundle.rb +3 -1
  9. data/lib/fluent_command_builder/command_builders/bundle_11.rb +10 -8
  10. data/lib/fluent_command_builder/command_builders/cucumber.rb +3 -1
  11. data/lib/fluent_command_builder/command_builders/cucumber_11.rb +10 -8
  12. data/lib/fluent_command_builder/command_builders/cucumber_12.rb +10 -8
  13. data/lib/fluent_command_builder/command_builders/dev_appserver_python.rb +3 -1
  14. data/lib/fluent_command_builder/command_builders/dev_appserver_python_16.rb +10 -8
  15. data/lib/fluent_command_builder/command_builders/dev_appserver_python_17.rb +10 -8
  16. data/lib/fluent_command_builder/command_builders/dotcover.rb +3 -1
  17. data/lib/fluent_command_builder/command_builders/dotcover_10.rb +10 -8
  18. data/lib/fluent_command_builder/command_builders/dotcover_11.rb +10 -8
  19. data/lib/fluent_command_builder/command_builders/dotcover_12.rb +10 -8
  20. data/lib/fluent_command_builder/command_builders/dotcover_20.rb +10 -8
  21. data/lib/fluent_command_builder/command_builders/fastlinkchecker.rb +3 -1
  22. data/lib/fluent_command_builder/command_builders/fastlinkchecker_21.rb +10 -8
  23. data/lib/fluent_command_builder/command_builders/installutil.rb +3 -1
  24. data/lib/fluent_command_builder/command_builders/installutil_11.rb +10 -8
  25. data/lib/fluent_command_builder/command_builders/installutil_20.rb +10 -8
  26. data/lib/fluent_command_builder/command_builders/installutil_35.rb +10 -8
  27. data/lib/fluent_command_builder/command_builders/installutil_40.rb +10 -8
  28. data/lib/fluent_command_builder/command_builders/msbuild.rb +3 -1
  29. data/lib/fluent_command_builder/command_builders/msbuild_20.rb +10 -8
  30. data/lib/fluent_command_builder/command_builders/msbuild_30.rb +10 -8
  31. data/lib/fluent_command_builder/command_builders/msbuild_35.rb +10 -8
  32. data/lib/fluent_command_builder/command_builders/msbuild_40.rb +10 -8
  33. data/lib/fluent_command_builder/command_builders/msdeploy.rb +3 -1
  34. data/lib/fluent_command_builder/command_builders/msdeploy_71.rb +10 -8
  35. data/lib/fluent_command_builder/command_builders/mstest.rb +3 -1
  36. data/lib/fluent_command_builder/command_builders/mstest_100.rb +10 -8
  37. data/lib/fluent_command_builder/command_builders/mstest_80.rb +10 -8
  38. data/lib/fluent_command_builder/command_builders/mstest_90.rb +10 -8
  39. data/lib/fluent_command_builder/command_builders/netsh.rb +3 -1
  40. data/lib/fluent_command_builder/command_builders/netsh_61.rb +10 -8
  41. data/lib/fluent_command_builder/command_builders/nuget.rb +3 -1
  42. data/lib/fluent_command_builder/command_builders/nuget_20.rb +10 -8
  43. data/lib/fluent_command_builder/command_builders/nunit.rb +3 -1
  44. data/lib/fluent_command_builder/command_builders/nunit_25.rb +10 -8
  45. data/lib/fluent_command_builder/command_builders/nunit_26.rb +10 -8
  46. data/lib/fluent_command_builder/command_builders/rake.rb +3 -1
  47. data/lib/fluent_command_builder/command_builders/rake_09.rb +10 -8
  48. data/lib/fluent_command_builder/command_builders/security_osx.rb +3 -1
  49. data/lib/fluent_command_builder/command_builders/security_osx_107.rb +10 -8
  50. data/lib/fluent_command_builder/command_builders/sevenzip.rb +3 -1
  51. data/lib/fluent_command_builder/command_builders/sevenzip_920.rb +10 -8
  52. data/lib/fluent_command_builder/command_builders/simian.rb +3 -1
  53. data/lib/fluent_command_builder/command_builders/simian_23.rb +10 -8
  54. data/lib/fluent_command_builder/command_builders/team_foundation.rb +3 -1
  55. data/lib/fluent_command_builder/command_builders/team_foundation_100.rb +10 -8
  56. data/lib/fluent_command_builder/command_builders/team_foundation_tee.rb +3 -1
  57. data/lib/fluent_command_builder/command_builders/team_foundation_tee_100.rb +10 -8
  58. data/lib/fluent_command_builder/command_builders/team_foundation_tee_101.rb +10 -8
  59. data/lib/fluent_command_builder/command_builders/xcodebuild.rb +3 -1
  60. data/lib/fluent_command_builder/command_builders/xcodebuild_43.rb +10 -8
  61. data/lib/fluent_command_builder/command_builders/xcodebuild_44.rb +10 -8
  62. data/lib/fluent_command_builder/command_formatters/hidden_password_formatter.rb +3 -3
  63. data/lib/fluent_command_builder/default_path_validator.rb +33 -0
  64. data/lib/fluent_command_builder/execution_context.rb +3 -1
  65. data/lib/fluent_command_builder/version.rb +11 -16
  66. data/lib/fluent_command_builder/version_validator.rb +12 -7
  67. metadata +8 -6
@@ -1,7 +1,7 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
3
  require File.expand_path(File.dirname(__FILE__) + '/../command_base')
4
- require File.expand_path(File.dirname(__FILE__) + '/../printer')
4
+ require File.expand_path(File.dirname(__FILE__) + '/../default_path_validator')
5
5
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
6
6
 
7
7
  module FluentCommandBuilder
@@ -11,20 +11,22 @@ module FluentCommandBuilder
11
11
  module MSBuild
12
12
  module V20
13
13
  VERSION = '2.0'
14
+ def self.exact_version
15
+ @exact_version ||= VERSION
16
+ end
17
+ def self.exact_version=(value)
18
+ @exact_version = value
19
+ end
14
20
  def self.default_path
15
21
  @default_path ||= nil
16
22
  end
17
23
  def self.default_path=(value)
18
- printer = FluentCommandBuilder::Printer.new
19
- begin
20
- printer.print_warning %Q[Default Path for command "#{FluentCommandBuilder::MSBuild::COMMAND_NAME}", version "#{VERSION}" does not exist. Path: #{value}] unless File.exist? value
21
- rescue
22
- printer.print_warning %Q[Failed to determine whether Default Path for command "#{FluentCommandBuilder::MSBuild::COMMAND_NAME}", version "#{VERSION}" exists. An internal error occurred.]
23
- end
24
+ validator = DefaultPathValidator.new value, FluentCommandBuilder::MSBuild::COMMAND_NAME, exact_version
25
+ validator.validate
24
26
  @default_path = value
25
27
  end
26
28
  def self.create(project_file=nil)
27
- b = UnderlyingBuilder.new FluentCommandBuilder::MSBuild::COMMAND_NAME, VERSION
29
+ b = UnderlyingBuilder.new FluentCommandBuilder::MSBuild::COMMAND_NAME, self.exact_version
28
30
  b.path = self.default_path
29
31
  b.actual_version_lambda = lambda { |path| FluentCommandBuilder::MSBuild.version path }
30
32
  c = MSBuild.new(b, project_file)
@@ -1,7 +1,7 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
3
  require File.expand_path(File.dirname(__FILE__) + '/../command_base')
4
- require File.expand_path(File.dirname(__FILE__) + '/../printer')
4
+ require File.expand_path(File.dirname(__FILE__) + '/../default_path_validator')
5
5
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
6
6
 
7
7
  module FluentCommandBuilder
@@ -11,20 +11,22 @@ module FluentCommandBuilder
11
11
  module MSBuild
12
12
  module V30
13
13
  VERSION = '3.0'
14
+ def self.exact_version
15
+ @exact_version ||= VERSION
16
+ end
17
+ def self.exact_version=(value)
18
+ @exact_version = value
19
+ end
14
20
  def self.default_path
15
21
  @default_path ||= nil
16
22
  end
17
23
  def self.default_path=(value)
18
- printer = FluentCommandBuilder::Printer.new
19
- begin
20
- printer.print_warning %Q[Default Path for command "#{FluentCommandBuilder::MSBuild::COMMAND_NAME}", version "#{VERSION}" does not exist. Path: #{value}] unless File.exist? value
21
- rescue
22
- printer.print_warning %Q[Failed to determine whether Default Path for command "#{FluentCommandBuilder::MSBuild::COMMAND_NAME}", version "#{VERSION}" exists. An internal error occurred.]
23
- end
24
+ validator = DefaultPathValidator.new value, FluentCommandBuilder::MSBuild::COMMAND_NAME, exact_version
25
+ validator.validate
24
26
  @default_path = value
25
27
  end
26
28
  def self.create(project_file=nil)
27
- b = UnderlyingBuilder.new FluentCommandBuilder::MSBuild::COMMAND_NAME, VERSION
29
+ b = UnderlyingBuilder.new FluentCommandBuilder::MSBuild::COMMAND_NAME, self.exact_version
28
30
  b.path = self.default_path
29
31
  b.actual_version_lambda = lambda { |path| FluentCommandBuilder::MSBuild.version path }
30
32
  c = MSBuild.new(b, project_file)
@@ -1,7 +1,7 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
3
  require File.expand_path(File.dirname(__FILE__) + '/../command_base')
4
- require File.expand_path(File.dirname(__FILE__) + '/../printer')
4
+ require File.expand_path(File.dirname(__FILE__) + '/../default_path_validator')
5
5
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
6
6
 
7
7
  module FluentCommandBuilder
@@ -11,20 +11,22 @@ module FluentCommandBuilder
11
11
  module MSBuild
12
12
  module V35
13
13
  VERSION = '3.5'
14
+ def self.exact_version
15
+ @exact_version ||= VERSION
16
+ end
17
+ def self.exact_version=(value)
18
+ @exact_version = value
19
+ end
14
20
  def self.default_path
15
21
  @default_path ||= nil
16
22
  end
17
23
  def self.default_path=(value)
18
- printer = FluentCommandBuilder::Printer.new
19
- begin
20
- printer.print_warning %Q[Default Path for command "#{FluentCommandBuilder::MSBuild::COMMAND_NAME}", version "#{VERSION}" does not exist. Path: #{value}] unless File.exist? value
21
- rescue
22
- printer.print_warning %Q[Failed to determine whether Default Path for command "#{FluentCommandBuilder::MSBuild::COMMAND_NAME}", version "#{VERSION}" exists. An internal error occurred.]
23
- end
24
+ validator = DefaultPathValidator.new value, FluentCommandBuilder::MSBuild::COMMAND_NAME, exact_version
25
+ validator.validate
24
26
  @default_path = value
25
27
  end
26
28
  def self.create(project_file=nil)
27
- b = UnderlyingBuilder.new FluentCommandBuilder::MSBuild::COMMAND_NAME, VERSION
29
+ b = UnderlyingBuilder.new FluentCommandBuilder::MSBuild::COMMAND_NAME, self.exact_version
28
30
  b.path = self.default_path
29
31
  b.actual_version_lambda = lambda { |path| FluentCommandBuilder::MSBuild.version path }
30
32
  c = MSBuild.new(b, project_file)
@@ -1,7 +1,7 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
3
  require File.expand_path(File.dirname(__FILE__) + '/../command_base')
4
- require File.expand_path(File.dirname(__FILE__) + '/../printer')
4
+ require File.expand_path(File.dirname(__FILE__) + '/../default_path_validator')
5
5
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
6
6
 
7
7
  module FluentCommandBuilder
@@ -11,20 +11,22 @@ module FluentCommandBuilder
11
11
  module MSBuild
12
12
  module V40
13
13
  VERSION = '4.0'
14
+ def self.exact_version
15
+ @exact_version ||= VERSION
16
+ end
17
+ def self.exact_version=(value)
18
+ @exact_version = value
19
+ end
14
20
  def self.default_path
15
21
  @default_path ||= nil
16
22
  end
17
23
  def self.default_path=(value)
18
- printer = FluentCommandBuilder::Printer.new
19
- begin
20
- printer.print_warning %Q[Default Path for command "#{FluentCommandBuilder::MSBuild::COMMAND_NAME}", version "#{VERSION}" does not exist. Path: #{value}] unless File.exist? value
21
- rescue
22
- printer.print_warning %Q[Failed to determine whether Default Path for command "#{FluentCommandBuilder::MSBuild::COMMAND_NAME}", version "#{VERSION}" exists. An internal error occurred.]
23
- end
24
+ validator = DefaultPathValidator.new value, FluentCommandBuilder::MSBuild::COMMAND_NAME, exact_version
25
+ validator.validate
24
26
  @default_path = value
25
27
  end
26
28
  def self.create(project_file=nil)
27
- b = UnderlyingBuilder.new FluentCommandBuilder::MSBuild::COMMAND_NAME, VERSION
29
+ b = UnderlyingBuilder.new FluentCommandBuilder::MSBuild::COMMAND_NAME, self.exact_version
28
30
  b.path = self.default_path
29
31
  b.actual_version_lambda = lambda { |path| FluentCommandBuilder::MSBuild.version path }
30
32
  c = MSBuild.new(b, project_file)
@@ -1,5 +1,6 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
+ require File.expand_path(File.dirname(__FILE__) + '/../command_builder_factory')
3
4
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
4
5
 
5
6
  module FluentCommandBuilder
@@ -18,7 +19,8 @@ module FluentCommandBuilder
18
19
  self.version_detector.version path
19
20
  end
20
21
  def self.create(&block)
21
- version_module(MSDeploy).create &block
22
+ f = CommandBuilderFactory.new MSDeploy
23
+ f.create &block
22
24
  end
23
25
  end
24
26
  end
@@ -1,7 +1,7 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
3
  require File.expand_path(File.dirname(__FILE__) + '/../command_base')
4
- require File.expand_path(File.dirname(__FILE__) + '/../printer')
4
+ require File.expand_path(File.dirname(__FILE__) + '/../default_path_validator')
5
5
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
6
6
 
7
7
  module FluentCommandBuilder
@@ -11,20 +11,22 @@ module FluentCommandBuilder
11
11
  module MSDeploy
12
12
  module V71
13
13
  VERSION = '7.1'
14
+ def self.exact_version
15
+ @exact_version ||= VERSION
16
+ end
17
+ def self.exact_version=(value)
18
+ @exact_version = value
19
+ end
14
20
  def self.default_path
15
21
  @default_path ||= nil
16
22
  end
17
23
  def self.default_path=(value)
18
- printer = FluentCommandBuilder::Printer.new
19
- begin
20
- printer.print_warning %Q[Default Path for command "#{FluentCommandBuilder::MSDeploy::COMMAND_NAME}", version "#{VERSION}" does not exist. Path: #{value}] unless File.exist? value
21
- rescue
22
- printer.print_warning %Q[Failed to determine whether Default Path for command "#{FluentCommandBuilder::MSDeploy::COMMAND_NAME}", version "#{VERSION}" exists. An internal error occurred.]
23
- end
24
+ validator = DefaultPathValidator.new value, FluentCommandBuilder::MSDeploy::COMMAND_NAME, exact_version
25
+ validator.validate
24
26
  @default_path = value
25
27
  end
26
28
  def self.create
27
- b = UnderlyingBuilder.new FluentCommandBuilder::MSDeploy::COMMAND_NAME, VERSION
29
+ b = UnderlyingBuilder.new FluentCommandBuilder::MSDeploy::COMMAND_NAME, self.exact_version
28
30
  b.path = self.default_path
29
31
  b.actual_version_lambda = lambda { |path| FluentCommandBuilder::MSDeploy.version path }
30
32
  c = MSDeploy.new(b)
@@ -1,5 +1,6 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
+ require File.expand_path(File.dirname(__FILE__) + '/../command_builder_factory')
3
4
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
4
5
 
5
6
  module FluentCommandBuilder
@@ -18,7 +19,8 @@ module FluentCommandBuilder
18
19
  self.version_detector.version path
19
20
  end
20
21
  def self.create(&block)
21
- version_module(MSTest).create &block
22
+ f = CommandBuilderFactory.new MSTest
23
+ f.create &block
22
24
  end
23
25
  end
24
26
  end
@@ -1,7 +1,7 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
3
  require File.expand_path(File.dirname(__FILE__) + '/../command_base')
4
- require File.expand_path(File.dirname(__FILE__) + '/../printer')
4
+ require File.expand_path(File.dirname(__FILE__) + '/../default_path_validator')
5
5
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
6
6
 
7
7
  module FluentCommandBuilder
@@ -11,20 +11,22 @@ module FluentCommandBuilder
11
11
  module MSTest
12
12
  module V100
13
13
  VERSION = '10.0'
14
+ def self.exact_version
15
+ @exact_version ||= VERSION
16
+ end
17
+ def self.exact_version=(value)
18
+ @exact_version = value
19
+ end
14
20
  def self.default_path
15
21
  @default_path ||= nil
16
22
  end
17
23
  def self.default_path=(value)
18
- printer = FluentCommandBuilder::Printer.new
19
- begin
20
- printer.print_warning %Q[Default Path for command "#{FluentCommandBuilder::MSTest::COMMAND_NAME}", version "#{VERSION}" does not exist. Path: #{value}] unless File.exist? value
21
- rescue
22
- printer.print_warning %Q[Failed to determine whether Default Path for command "#{FluentCommandBuilder::MSTest::COMMAND_NAME}", version "#{VERSION}" exists. An internal error occurred.]
23
- end
24
+ validator = DefaultPathValidator.new value, FluentCommandBuilder::MSTest::COMMAND_NAME, exact_version
25
+ validator.validate
24
26
  @default_path = value
25
27
  end
26
28
  def self.create
27
- b = UnderlyingBuilder.new FluentCommandBuilder::MSTest::COMMAND_NAME, VERSION
29
+ b = UnderlyingBuilder.new FluentCommandBuilder::MSTest::COMMAND_NAME, self.exact_version
28
30
  b.path = self.default_path
29
31
  b.actual_version_lambda = lambda { |path| FluentCommandBuilder::MSTest.version path }
30
32
  c = MSTest.new(b)
@@ -1,7 +1,7 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
3
  require File.expand_path(File.dirname(__FILE__) + '/../command_base')
4
- require File.expand_path(File.dirname(__FILE__) + '/../printer')
4
+ require File.expand_path(File.dirname(__FILE__) + '/../default_path_validator')
5
5
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
6
6
 
7
7
  module FluentCommandBuilder
@@ -11,20 +11,22 @@ module FluentCommandBuilder
11
11
  module MSTest
12
12
  module V80
13
13
  VERSION = '8.0'
14
+ def self.exact_version
15
+ @exact_version ||= VERSION
16
+ end
17
+ def self.exact_version=(value)
18
+ @exact_version = value
19
+ end
14
20
  def self.default_path
15
21
  @default_path ||= nil
16
22
  end
17
23
  def self.default_path=(value)
18
- printer = FluentCommandBuilder::Printer.new
19
- begin
20
- printer.print_warning %Q[Default Path for command "#{FluentCommandBuilder::MSTest::COMMAND_NAME}", version "#{VERSION}" does not exist. Path: #{value}] unless File.exist? value
21
- rescue
22
- printer.print_warning %Q[Failed to determine whether Default Path for command "#{FluentCommandBuilder::MSTest::COMMAND_NAME}", version "#{VERSION}" exists. An internal error occurred.]
23
- end
24
+ validator = DefaultPathValidator.new value, FluentCommandBuilder::MSTest::COMMAND_NAME, exact_version
25
+ validator.validate
24
26
  @default_path = value
25
27
  end
26
28
  def self.create
27
- b = UnderlyingBuilder.new FluentCommandBuilder::MSTest::COMMAND_NAME, VERSION
29
+ b = UnderlyingBuilder.new FluentCommandBuilder::MSTest::COMMAND_NAME, self.exact_version
28
30
  b.path = self.default_path
29
31
  b.actual_version_lambda = lambda { |path| FluentCommandBuilder::MSTest.version path }
30
32
  c = MSTest.new(b)
@@ -1,7 +1,7 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
3
  require File.expand_path(File.dirname(__FILE__) + '/../command_base')
4
- require File.expand_path(File.dirname(__FILE__) + '/../printer')
4
+ require File.expand_path(File.dirname(__FILE__) + '/../default_path_validator')
5
5
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
6
6
 
7
7
  module FluentCommandBuilder
@@ -11,20 +11,22 @@ module FluentCommandBuilder
11
11
  module MSTest
12
12
  module V90
13
13
  VERSION = '9.0'
14
+ def self.exact_version
15
+ @exact_version ||= VERSION
16
+ end
17
+ def self.exact_version=(value)
18
+ @exact_version = value
19
+ end
14
20
  def self.default_path
15
21
  @default_path ||= nil
16
22
  end
17
23
  def self.default_path=(value)
18
- printer = FluentCommandBuilder::Printer.new
19
- begin
20
- printer.print_warning %Q[Default Path for command "#{FluentCommandBuilder::MSTest::COMMAND_NAME}", version "#{VERSION}" does not exist. Path: #{value}] unless File.exist? value
21
- rescue
22
- printer.print_warning %Q[Failed to determine whether Default Path for command "#{FluentCommandBuilder::MSTest::COMMAND_NAME}", version "#{VERSION}" exists. An internal error occurred.]
23
- end
24
+ validator = DefaultPathValidator.new value, FluentCommandBuilder::MSTest::COMMAND_NAME, exact_version
25
+ validator.validate
24
26
  @default_path = value
25
27
  end
26
28
  def self.create
27
- b = UnderlyingBuilder.new FluentCommandBuilder::MSTest::COMMAND_NAME, VERSION
29
+ b = UnderlyingBuilder.new FluentCommandBuilder::MSTest::COMMAND_NAME, self.exact_version
28
30
  b.path = self.default_path
29
31
  b.actual_version_lambda = lambda { |path| FluentCommandBuilder::MSTest.version path }
30
32
  c = MSTest.new(b)
@@ -1,5 +1,6 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
+ require File.expand_path(File.dirname(__FILE__) + '/../command_builder_factory')
3
4
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
4
5
 
5
6
  module FluentCommandBuilder
@@ -18,7 +19,8 @@ module FluentCommandBuilder
18
19
  self.version_detector.version path
19
20
  end
20
21
  def self.create(&block)
21
- version_module(Netsh).create &block
22
+ f = CommandBuilderFactory.new Netsh
23
+ f.create &block
22
24
  end
23
25
  end
24
26
  end
@@ -1,7 +1,7 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
3
  require File.expand_path(File.dirname(__FILE__) + '/../command_base')
4
- require File.expand_path(File.dirname(__FILE__) + '/../printer')
4
+ require File.expand_path(File.dirname(__FILE__) + '/../default_path_validator')
5
5
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
6
6
 
7
7
  module FluentCommandBuilder
@@ -11,20 +11,22 @@ module FluentCommandBuilder
11
11
  module Netsh
12
12
  module V61
13
13
  VERSION = '6.1'
14
+ def self.exact_version
15
+ @exact_version ||= VERSION
16
+ end
17
+ def self.exact_version=(value)
18
+ @exact_version = value
19
+ end
14
20
  def self.default_path
15
21
  @default_path ||= nil
16
22
  end
17
23
  def self.default_path=(value)
18
- printer = FluentCommandBuilder::Printer.new
19
- begin
20
- printer.print_warning %Q[Default Path for command "#{FluentCommandBuilder::Netsh::COMMAND_NAME}", version "#{VERSION}" does not exist. Path: #{value}] unless File.exist? value
21
- rescue
22
- printer.print_warning %Q[Failed to determine whether Default Path for command "#{FluentCommandBuilder::Netsh::COMMAND_NAME}", version "#{VERSION}" exists. An internal error occurred.]
23
- end
24
+ validator = DefaultPathValidator.new value, FluentCommandBuilder::Netsh::COMMAND_NAME, exact_version
25
+ validator.validate
24
26
  @default_path = value
25
27
  end
26
28
  def self.create
27
- b = UnderlyingBuilder.new FluentCommandBuilder::Netsh::COMMAND_NAME, VERSION
29
+ b = UnderlyingBuilder.new FluentCommandBuilder::Netsh::COMMAND_NAME, self.exact_version
28
30
  b.path = self.default_path
29
31
  b.actual_version_lambda = lambda { |path| FluentCommandBuilder::Netsh.version path }
30
32
  c = Netsh.new(b)
@@ -1,5 +1,6 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
+ require File.expand_path(File.dirname(__FILE__) + '/../command_builder_factory')
3
4
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
4
5
 
5
6
  module FluentCommandBuilder
@@ -18,7 +19,8 @@ module FluentCommandBuilder
18
19
  self.version_detector.version path
19
20
  end
20
21
  def self.create(&block)
21
- version_module(NuGet).create &block
22
+ f = CommandBuilderFactory.new NuGet
23
+ f.create &block
22
24
  end
23
25
  end
24
26
  end
@@ -1,7 +1,7 @@
1
1
  # Generated code. Do not modify.
2
2
 
3
3
  require File.expand_path(File.dirname(__FILE__) + '/../command_base')
4
- require File.expand_path(File.dirname(__FILE__) + '/../printer')
4
+ require File.expand_path(File.dirname(__FILE__) + '/../default_path_validator')
5
5
  require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
6
6
 
7
7
  module FluentCommandBuilder
@@ -11,20 +11,22 @@ module FluentCommandBuilder
11
11
  module NuGet
12
12
  module V20
13
13
  VERSION = '2.0'
14
+ def self.exact_version
15
+ @exact_version ||= VERSION
16
+ end
17
+ def self.exact_version=(value)
18
+ @exact_version = value
19
+ end
14
20
  def self.default_path
15
21
  @default_path ||= nil
16
22
  end
17
23
  def self.default_path=(value)
18
- printer = FluentCommandBuilder::Printer.new
19
- begin
20
- printer.print_warning %Q[Default Path for command "#{FluentCommandBuilder::NuGet::COMMAND_NAME}", version "#{VERSION}" does not exist. Path: #{value}] unless File.exist? value
21
- rescue
22
- printer.print_warning %Q[Failed to determine whether Default Path for command "#{FluentCommandBuilder::NuGet::COMMAND_NAME}", version "#{VERSION}" exists. An internal error occurred.]
23
- end
24
+ validator = DefaultPathValidator.new value, FluentCommandBuilder::NuGet::COMMAND_NAME, exact_version
25
+ validator.validate
24
26
  @default_path = value
25
27
  end
26
28
  def self.create
27
- b = UnderlyingBuilder.new FluentCommandBuilder::NuGet::COMMAND_NAME, VERSION
29
+ b = UnderlyingBuilder.new FluentCommandBuilder::NuGet::COMMAND_NAME, self.exact_version
28
30
  b.path = self.default_path
29
31
  b.actual_version_lambda = lambda { |path| FluentCommandBuilder::NuGet.version path }
30
32
  c = NuGet.new(b)