xml_file_renamer 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 806a10da0fa32202c5c40b373f901c2895b6c726
4
- data.tar.gz: 9b5c06366f28517e8c4ce88d904f642e4be43bd7
3
+ metadata.gz: abc8f48c224700cfbbc57548842dcead6441c9e6
4
+ data.tar.gz: 008f6de205746b8787b7c3d95b1c291b26e8fe97
5
5
  SHA512:
6
- metadata.gz: b1edb154f8da4a36d86b1ae13dde99e129c3aa98d4c7f5b723793834363a54aadd2c4ead0ffeb6eae9e2157ebf910f36aa07daf446d5d2e20c3148a7edfddc6d
7
- data.tar.gz: c591cdf1dc7663b092667c26c24e2a953c8fc0df1a3ab6affc175ce690f17c3f31b160244eda33e3027728cb07edf6a0bb33b12709ae59d783935e735926e506
6
+ metadata.gz: fa69655120b5d0c40af8c9f5c6f98bef9c9bf77c83f3a4e9103d2859d59ee4a5bd4feabaa635f1193b4e7467dc57517c622b42a7d57bdd6c4086b01ac9bc0a34
7
+ data.tar.gz: 57877bfc7039da6962d8c50e7179c7b20b05fd7f0f20c81675e4d1c69013e4444137a6ccc5e819b81af644fbd6b58b57b204de6109b4d90bf306d70c114921fe
data/README.md CHANGED
@@ -34,7 +34,7 @@ This is a Ruby class that allows you to rename your XML files based on content i
34
34
 
35
35
  Copy example XML files provided by the gem:
36
36
 
37
- $ cp -r `which xml_file_renamer`/../../gems/xml_file_renamer-0.0.3/example_xml_files ~/Documents/example_xml_files
37
+ $ cp -r `which xml_file_renamer`/../../gems/xml_file_renamer-0.0.7/example_xml_files ~/Documents/example_xml_files
38
38
 
39
39
  Run the command on a single file:
40
40
 
data/bin/xml_file_renamer CHANGED
@@ -1,8 +1,9 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  require 'xml_file_renamer'
4
- xfr = XMLFileRenamer.new(ARGV[0], ARGV[1])
4
+ xfr = XMLFileRenamer.new(ARGV[0], ARGV[1], ARGV[2])
5
5
  xfr.print_origin_directory
6
6
  xfr.print_export_directory
7
7
  xfr.print_css_selector
8
+ xfr.print_case_option
8
9
  xfr.rename
@@ -1,13 +1,15 @@
1
1
  require 'nokogiri'
2
+ require 'active_support/all'
2
3
 
3
4
  class XMLFileRenamer
4
- attr_reader :source_data, :css_selector, :xml_document,
5
- :origin_directory, :export_directory,
5
+ attr_reader :source_data, :css_selector, :case_option,
6
+ :xml_document, :origin_directory, :export_directory,
6
7
  :new_file_name, :destination_file_name
7
8
 
8
- def initialize(source_data, css_selector)
9
+ def initialize(source_data, css_selector, case_option = nil)
9
10
  @source_data = source_data
10
11
  @css_selector = css_selector
12
+ @case_option = case_option
11
13
 
12
14
  set_origin_directory
13
15
  set_export_directory
@@ -28,10 +30,21 @@ class XMLFileRenamer
28
30
  css_selector
29
31
  end
30
32
 
33
+ def print_case_option
34
+ puts '**** Case Option: ' + case_option if case_option != nil
35
+ case_option
36
+ end
37
+
38
+ def print_file_name
39
+ puts '**** New File Name: ' + new_file_name
40
+ end
41
+
42
+
31
43
  def rename
32
44
  new_file = if (!File.directory? source_data) && (File.exist? source_data)
33
45
  open_xml_file
34
46
  query_xml_file
47
+ convert_case
35
48
  export_xml_file
36
49
  end
37
50
 
@@ -40,7 +53,7 @@ class XMLFileRenamer
40
53
  Dir.chdir(source_data) do
41
54
  all_regular_files_in_directory = Dir.glob('*.*')
42
55
  all_regular_files_in_directory.each do |file_name|
43
- xml_file_renamer = XMLFileRenamer.new(file_name, css_selector)
56
+ xml_file_renamer = XMLFileRenamer.new(file_name, css_selector, case_option)
44
57
  new_files << xml_file_renamer.rename
45
58
  end
46
59
  end
@@ -73,9 +86,21 @@ class XMLFileRenamer
73
86
 
74
87
  def query_xml_file
75
88
  xml_query_by_css = xml_document.css(css_selector)
76
-
77
89
  @new_file_name = xml_query_by_css.text.strip
78
- puts '**** New File Name: ' + new_file_name
90
+ end
91
+
92
+ def convert_case
93
+ @new_file_name = if case_option == 'lower_case'
94
+ @new_file_name.downcase
95
+ elsif case_option == 'upper_case'
96
+ @new_file_name.upcase
97
+ elsif case_option == 'title_case'
98
+ @new_file_name.titlecase
99
+ elsif case_option == 'camel_case'
100
+ @new_file_name.split.join.camelcase
101
+ elsif case_option == 'snake_case'
102
+ @new_file_name.titleize.split.join.underscore
103
+ end
79
104
  end
80
105
 
81
106
  #This method should be split into making a directory and exporting a file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xml_file_renamer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Taylor