Class: JBundler::Pom

Inherits:
Object
  • Object
show all
Includes:
Maven::Tools::Coordinate
Defined in:
lib/jbundler/pom.rb

Instance Method Summary collapse

Constructor Details

#initialize(name, version, deps, packaging = nil) ⇒ Pom

Returns a new instance of Pom.



129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
# File 'lib/jbundler/pom.rb', line 129

def initialize(name, version, deps, packaging = nil)
  unless defined? XMLOutputFactory
    java_imports
  end

  @name = name
  @packaging = packaging || 'jar'
  @version = version

  @file = File.join(temp_dir, 'pom.xml')

  out = java.io.BufferedOutputStream.new( java.io.FileOutputStream.new( @file.to_java ) )

  xmlStreamWriter = start_write_pom( out, name, version, packaging )
  
  write_dependencies( xmlStreamWriter, deps )

  end_write_pom( xmlStreamWriter )
  
ensure
  out.close
end

Instance Method Details

#coordinateObject



121
122
123
# File 'lib/jbundler/pom.rb', line 121

def coordinate
  @coord ||= "#{GROUP_ID}:#{@name}:#{@packaging}:#{@version}"
end

#fileObject



125
126
127
# File 'lib/jbundler/pom.rb', line 125

def file
  @file
end