Class: PackageDetector
- Inherits:
-
Object
- Object
- PackageDetector
- Defined in:
- lib/package_detector.rb,
lib/package_detector/package.rb,
lib/package_detector/version.rb,
lib/package_detector/visitor.rb,
lib/package_detector/package/ios.rb,
lib/package_detector/visitor/zip.rb,
lib/package_detector/package/android.rb
Defined Under Namespace
Constant Summary collapse
- ROOT_DIR =
File.(File.join('..', 'package_detector', 'package', '*'), __FILE__)
- VERSION =
"0.0.1"
Instance Attribute Summary collapse
-
#package ⇒ Object
Returns the value of attribute package.
Instance Method Summary collapse
- #detect ⇒ Object
- #guess(package_type) ⇒ Object
-
#initialize(package) ⇒ PackageDetector
constructor
A new instance of PackageDetector.
Constructor Details
#initialize(package) ⇒ PackageDetector
Returns a new instance of PackageDetector.
9 10 11 12 13 14 15 |
# File 'lib/package_detector.rb', line 9 def initialize(package) if package.kind_of? IO @package = package else raise TypeError, "can't recieve an object except for IO object." end end |
Instance Attribute Details
#package ⇒ Object
Returns the value of attribute package.
7 8 9 |
# File 'lib/package_detector.rb', line 7 def package @package end |
Instance Method Details
#detect ⇒ Object
17 18 19 20 21 22 23 24 |
# File 'lib/package_detector.rb', line 17 def detect package_types = Dir[ROOT_DIR].map{|n| if File.file?(n) package_type(File.basename(n, '.rb')) end } package_types.detect{|type| self.guess(type.new)} end |
#guess(package_type) ⇒ Object
26 27 28 |
# File 'lib/package_detector.rb', line 26 def guess(package_type) package_type.accept(@package, package_type.file_type) end |