pacer-titan 0.0.3-java → 0.0.7-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b40a98e250bffdf6433ae98d69776ce674ee354b
4
- data.tar.gz: ae75aa50efed7d8e8d116fce3ded4ed7577e0cb1
3
+ metadata.gz: 36ba877d76765fcb75c5d4b72f8049b6452b52ae
4
+ data.tar.gz: eda4936a369f18b4b1fa725bf03c77d049a8d3a7
5
5
  SHA512:
6
- metadata.gz: 5e1d42fa026cb9597cacb9959990a181bb80a1894df1749cda7e0380c9d263513a92c883719d09185ee43fbd1189ff95202d9bba673c3106c8bc71d033b69c92
7
- data.tar.gz: 88c89d9a6cb9ee187a08a103ceaedd57ac404f5d3cb1d63f1b29ac34b1d008cf2adcd54aa4ba00235191ee882086acab213520dad379e03c50eccd657d4ce4ae
6
+ metadata.gz: 8c2fee47309443af0809d067a808f5f8819dd84c09f70e500e6cedab4b1fe30b4e533a8c4fd6bd67ba270e403465d892b04abaf4f7d13ef7eaa768ca0c32c1f9
7
+ data.tar.gz: 51efc28f0e4965fa2e1d1e6279e9e509ad4fa5520f40217da0d5b7fd65bf72215509e63ebe1dce7d4002d7785c530fad99c2a6303fd1ebb51a6ffcb87603c62d
data/.gitignore CHANGED
@@ -1,6 +1,4 @@
1
- *.gem
2
1
  .bundle
3
2
  Gemfile.lock
4
- pkg/*
5
- target/*
6
- lib/*.jar
3
+ tmp
4
+ pkg
data/Jarfile ADDED
@@ -0,0 +1,3 @@
1
+ jar 'com.thinkaurelius.titan:titan-core:0.5.4'
2
+ jar 'com.thinkaurelius.titan:titan-es:0.5.4'
3
+ jar 'com.thinkaurelius.titan:titan-cassandra:0.5.4'
data/README.md CHANGED
@@ -8,29 +8,11 @@ This is an alpha-version pacer adapter with basic support for a [Titan](http://t
8
8
 
9
9
  ## Installation
10
10
 
11
- As always: ```gem 'pacer-titan'```, then you will need to load the jars for your storage backend of choice (see below).
12
-
13
- If you want to hack at pacer-titan:
14
- - You will need to install Maven first.
15
- - Clone this repository.
16
- - Run ```rake install``` in its directory to build Titan's jars.
17
- - Include the gem in your project's gemfile, directing its path to your cloned copy.
11
+ As always: ```gem 'pacer-titan'```.
18
12
 
19
13
  ## Backends
20
14
 
21
- This gem includes Titan 0.4.2 and its dependencies.
22
-
23
- It seems embedded backends (embedded Cassandra, embedded ElasticSearch) do not launch without extra work specifying their class paths when launching your app.
24
-
25
- The excellent [jBundler](https://github.com/mkristian/jbundler) does a great job of this for you, simply add any of the following to your Jarfile as needed:
26
-
27
- ```ruby
28
- jar 'com.thinkaurelius.titan:titan-es', '~> 0.4.2' # ElasticSearch
29
- jar 'com.thinkaurelius.titan:titan-cassandra', '~> 0.4.2' # Cassandra
30
- jar 'com.thinkaurelius.titan:titan-berkeleyje', '~> 0.4.2' # BerkeleyDB
31
- ```
32
-
33
- You may find your JRuby JVM crashes under heavy load if you include too many jars; increase your -XX:MaxPermSize
15
+ This gem includes Titan 0.5.4 with the Cassandra backend and ElasticSearch.
34
16
 
35
17
  ## Usage
36
18
 
data/Rakefile CHANGED
@@ -1,36 +1,3 @@
1
1
  require 'bundler'
2
- Bundler::GemHelper.install_tasks
3
-
4
- file 'pom.xml' => 'lib/pacer-titan/version.rb' do
5
- pom = File.read 'pom.xml'
6
- when_writing('Update pom.xml version number') do
7
- open 'pom.xml', 'w' do |f|
8
- pom.each_line do |line|
9
- line.sub!(%r{<gem.version>.*</gem.version>}, "<gem.version>#{ Pacer::Titan::VERSION }</gem.version>")
10
- line.sub!(%r{<blueprints.version>.*</blueprints.version>}, "<blueprints.version>#{ Pacer::Titan::BLUEPRINTS_VERSION }</blueprints.version>")
11
- line.sub!(%r{<pipes.version>.*</pipes.version>}, "<pipes.version>#{ Pacer::Titan::PIPES_VERSION }</pipes.version>")
12
- line.sub!(%r{<titan.version>.*</titan.version>}, "<titan.version>#{ Pacer::Titan::TITAN_VERSION }</titan.version>")
13
- f << line
14
- end
15
- end
16
- end
17
- end
18
-
19
- file Pacer::Titan::JAR_PATH => 'pom.xml' do
20
- when_writing("Execute 'mvn package' task") do
21
- system('mvn clean package')
22
- end
23
- end
24
-
25
- task :note do
26
- puts "NOTE: touch lib/pacer-titan/version.rb (or rake touch) to force everything to rebuild"
27
- end
28
-
29
- task :build => [:note, Pacer::Titan::JAR_PATH]
30
- task :install => [:note, Pacer::Titan::JAR_PATH]
31
-
32
- desc 'Touch version.rb so that the jar rebuilds'
33
- task :touch do
34
- system 'touch', 'lib/pacer-titan/version.rb'
35
- end
36
2
 
3
+ Bundler::GemHelper.install_tasks
@@ -4,10 +4,13 @@ lib_path = File.expand_path(File.join(File.dirname(__FILE__), '../lib'))
4
4
  $:.unshift lib_path unless $:.any? { |path| path == lib_path }
5
5
 
6
6
  require 'pacer-titan/version'
7
- require Pacer::Titan::JAR
7
+
8
8
  require 'pacer-titan/graph'
9
9
  require 'pacer-titan/titan_query'
10
10
  require 'pacer-titan/external_index_query'
11
+ require 'pacer-titan/create_vertex'
12
+ require 'pacer-titan/encoder'
13
+ require 'pacer-titan/vertex_query'
11
14
 
12
15
  module Pacer
13
16
  class << self
@@ -27,12 +30,8 @@ module Pacer
27
30
  Pacer.open_graphs.delete path
28
31
  end
29
32
 
30
- Titan::Graph.new(Pacer::YamlEncoder, open, shutdown)
33
+ Titan::Graph.new(Pacer::TitanEncoder, open, shutdown)
31
34
  end
32
-
33
- def executing_route(route)
34
- Rails.logger.debug "Pacer Titan executing route: #{route.description}" if defined? Rails
35
- end
36
35
  end
37
36
  end
38
37
 
@@ -0,0 +1,42 @@
1
+ module Pacer
2
+ module Titan
3
+ class Graph
4
+ # modified from Pacer - Use titan's add_vertex override to set vertex label when creating
5
+ # Create a vertex in the graph.
6
+ #
7
+ # @overload create_vertex(*args)
8
+ # @param [extension, Hash] *args extension (Module/Class) arguments will be
9
+ # added to the current vertex. A Hash will be
10
+ # treated as element properties.
11
+ # @overload create_vertex(id, *args)
12
+ # @param [element id] id the desired element id. Some graphs
13
+ # ignore this.
14
+ # @param [extension, Hash] *args extension (Module/Class) arguments will be
15
+ # added to the current vertex. A Hash will be
16
+ # treated as element properties.
17
+ def create_vertex(*args)
18
+ id, wrapper, modules, props = id_modules_properties(args)
19
+ label = props.delete(:label) if props
20
+
21
+ raw_vertex = creating_elements do
22
+ if label
23
+ blueprints_graph.addVertexWithLabel(label)
24
+ else
25
+ blueprints_graph.addVertex
26
+ end
27
+ end
28
+
29
+ if wrapper
30
+ vertex = wrapper.new graph, raw_vertex
31
+ else
32
+ vertex = base_vertex_wrapper.new graph, raw_vertex
33
+ end
34
+ if modules.any?
35
+ vertex = vertex.add_extensions modules
36
+ end
37
+ props.each { |k, v| vertex[k.to_s] = v } if props
38
+ vertex
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,90 @@
1
+ require 'yaml'
2
+
3
+ module Pacer
4
+ # This encoder was originally part of pacer-neo4j. It uses native data where
5
+ # Neo4j could and for everything else it uses (slow (but easy))
6
+ # human-readable YAML encoding.
7
+ # Modified to convert times to UTC when saving and use Rails' time zone support
8
+ class TitanEncoder
9
+ def self.encode_property(value)
10
+ case value
11
+ when nil
12
+ nil
13
+ when String
14
+ value = value.strip
15
+ value = nil if value == ''
16
+ value
17
+ when Symbol
18
+ value.to_s
19
+ when Numeric
20
+ if value.is_a? Bignum
21
+ dump value
22
+ else
23
+ value.to_java
24
+ end
25
+ when true, false
26
+ value.to_java
27
+ when Date
28
+ value.to_time.strftime ' time %Y-%m-%d'
29
+ when DateTime, Time
30
+ value.to_time.utc.strftime ' time %Y-%m-%d %H:%M:%S.%L %z'
31
+ when Array
32
+ if value.length == 0
33
+ value_type = Fixnum
34
+ else
35
+ value_type = value.first.class
36
+ value_type = TrueClass if value_type == FalseClass
37
+ value.each do |v|
38
+ if value_type != v.class or (value == true or value == false and value_type == TrueClass)
39
+ value_type = nil
40
+ break
41
+ end
42
+ end
43
+ end
44
+ case value_type
45
+ when Fixnum
46
+ value.to_java :long
47
+ when Float
48
+ value.to_java :double
49
+ when TrueClass
50
+ value.to_java :boolean
51
+ when String
52
+ value.to_java :string
53
+ when Symbol
54
+ value.to_java :string
55
+ else
56
+ dump value
57
+ end
58
+ else
59
+ dump value
60
+ end
61
+ end
62
+
63
+ def self.decode_property(value)
64
+ if value.is_a? String and value[0, 1] == ' '
65
+ if value[1, 4] == 'time'
66
+ # FIXME: we lose the milliseconds here (and time zone if no Rails)...
67
+ if defined? Rails
68
+ Time.zone.parse value[6..-1]
69
+ else
70
+ Time.parse value[6..-1]
71
+ end
72
+ else
73
+ YAML.load(value[1..-1])
74
+ end
75
+ elsif value.is_a? ArrayJavaProxy
76
+ value.to_a
77
+ else
78
+ value
79
+ end
80
+ rescue Psych::SyntaxError
81
+ value
82
+ end
83
+
84
+ private
85
+
86
+ def self.dump(value)
87
+ " #{ YAML.dump value }"
88
+ end
89
+ end
90
+ end
@@ -4,11 +4,11 @@ module Pacer
4
4
  # Use Titan's indexQuery to access external indexes using a custom lucene string
5
5
  # eg. for grouped words search starting with lorem: g.index_query(:text, '(lorem*)')
6
6
  # can also pass an array of properties to hit multiple elasticsearch indices at once
7
- def index_query(properties, query, options = {})
7
+ def index_query(index_name, properties, query, options = {})
8
8
  options[:element_type] ||= :vertex
9
- options[:index_name] ||= 'search' # name of the external index as configured in the .properties file
10
9
 
11
10
  chain_route options.merge(
11
+ index_name: index_name,
12
12
  query: query,
13
13
  properties: properties,
14
14
  filter: :external_index_query,
@@ -40,7 +40,7 @@ module Pacer
40
40
  path = path.vertices.collect{ |v| v.get_element }
41
41
  end
42
42
 
43
- # expects query in the form of 'v.text:(lorem*)'
43
+ # expects query in the form of 'v.text:(lorem*)' to search 'text' vertex property with lucene query syntax '(lorem*)'
44
44
  def build_titan_lucene_query(term, property)
45
45
  if property.is_a? Array
46
46
  queries = []
@@ -1,6 +1,12 @@
1
1
  module Pacer
2
2
  module Titan
3
3
  class Graph < PacerGraph
4
+
5
+ # Include label in key indices so we can limit index queries by vertex label
6
+ def key_indices(type = nil)
7
+ indices = super
8
+ indices.add 'label'
9
+ end
4
10
 
5
11
  # Use GraphQuery for index lookups, based on pacer-neo4j's code:
6
12
  private
@@ -29,7 +35,6 @@ module Pacer
29
35
  def indexed_properties(type, filters)
30
36
  filters.properties.select { |k, v| key_indices(type).include?(k) }
31
37
  end
32
-
33
38
  end
34
39
  end
35
40
  end
@@ -18,7 +18,7 @@ class RSpec::GraphRunner
18
18
 
19
19
  def titan_graph_2
20
20
  return @titan_graph_2 if @titan_graph_2
21
- @dex_graph2 = Pacer.titan('../pacer-titan/config/inmemory.properties')
21
+ @titan_graph_2 = Pacer.titan('../pacer-titan/config/inmemory.properties')
22
22
  end
23
23
  end
24
24
  end
@@ -3,7 +3,7 @@ module Pacer
3
3
  class Graph
4
4
  # Use Titan's QueryBuilder to access indices when you need to specify other comparison predicates
5
5
  # eg: g.query{ has('description', Text::CONTAINS, 'abc').has('login', 'ilya') }.out(:messages)...
6
- # be sure to import com.thinkaurelius.titan.core.attribute.Text for the above example
6
+ # import com.thinkaurelius.titan.core.attribute.Text for the above example
7
7
  def query(options = {}, &query)
8
8
  options[:element_type] ||= :vertex
9
9
 
@@ -73,7 +73,7 @@ module Pacer
73
73
  end
74
74
 
75
75
  def inspect_string
76
- "#{ inspect_class_name }"
76
+ "#{ inspect_class_name } (#{query.inspect})"
77
77
  end
78
78
  end
79
79
  end
@@ -1,11 +1,6 @@
1
1
  module Pacer
2
2
  module Titan
3
- VERSION = "0.0.3"
4
- JAR = "pacer-titan-#{ VERSION }-standalone.jar"
5
- JAR_PATH = "lib/#{ JAR }"
6
- BLUEPRINTS_VERSION = "2.4.0"
7
- PIPES_VERSION = "2.4.0"
8
- TITAN_VERSION = "0.4.2"
9
- PACER_REQ = ">= 1.4.0"
3
+ VERSION = "0.0.7"
4
+ PACER_REQ = ">= 2.0.6"
10
5
  end
11
6
  end
@@ -0,0 +1,71 @@
1
+ module Pacer
2
+ module Core::Graph::VerticesRoute
3
+ # Helper function to query a vertex-centric index
4
+ def vertex_query(labels, direction, options={}, &block)
5
+ options[:element_type] ||= :vertex
6
+ limit = options.delete(:limit)
7
+ order_by = options.delete(:order)
8
+
9
+ chain_route options.merge(pipe_class: Pacer::Pipes::VertexQueryPipe,
10
+ pipe_args: [labels, direction, options[:element_type], block, limit, order_by],
11
+ route_name: "VertexQuery (#{labels} - #{direction})")
12
+ end
13
+ end
14
+
15
+ # Note Gremlin has a VertexQueryPipe, however it does not support Titan's orderBy for vertex-centric indexes, hence ruby implementation:
16
+ module Pipes
17
+ class VertexQueryPipe < RubyPipe
18
+
19
+ def initialize(labels, direction, element_type, block=nil, limit=nil, order_by={})
20
+ super()
21
+ @labels = labels
22
+ @block = block
23
+ @limit = limit
24
+ @current_iterator = nil
25
+ @order_by = order_by.keys.first if order_by
26
+ @order_direction = order_by.values.first if order_by
27
+ @element_type = element_type
28
+
29
+ case direction.to_sym
30
+ when :out
31
+ @direction = com.tinkerpop.blueprints.Direction::OUT
32
+ when :in
33
+ @direction = com.tinkerpop.blueprints.Direction::IN
34
+ when :both
35
+ @direction = com.tinkerpop.blueprints.Direction::BOTH
36
+ else
37
+ raise "Invalid direction to VertexQueryPipe (use :out, :in, or :both)"
38
+ end
39
+
40
+ case @order_direction.try(:to_sym)
41
+ when :asc
42
+ @order_direction = com.thinkaurelius.titan.core.Order::ASC
43
+ when :desc
44
+ @order_direction = com.thinkaurelius.titan.core.Order::DESC
45
+ else
46
+ @order_direction = nil
47
+ end
48
+ end
49
+
50
+ def processNextStart
51
+ while true
52
+ if @current_iterator.try(:has_next)
53
+ return @current_iterator.next
54
+ else
55
+ vertex = starts.next
56
+ query = vertex.query.direction(@direction).labels(@labels)
57
+ query = query.instance_exec(&@block) if @block
58
+ query = query.order_by(@order_by.to_s, @order_direction) if @order_by && @order_direction
59
+ query = query.limit(@limit) if @limit
60
+ if @element_type == :vertex
61
+ @current_iterator = query.vertices.iterator
62
+ else
63
+ @current_iterator = query.edges.iterator
64
+ end
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
71
+
@@ -9,12 +9,12 @@ Gem::Specification.new do |s|
9
9
  s.authors = ["Ilya Kardailsky"]
10
10
  s.email = ["ilya.kardailsky@gmail.com"]
11
11
  s.homepage = "http://www.github.com"
12
- s.summary = %q{Titan jars and related code for Pacer}
12
+ s.summary = %q{Titan adapter for Pacer}
13
13
  s.description = s.summary
14
14
 
15
15
  s.add_dependency 'pacer', Pacer::Titan::PACER_REQ
16
16
 
17
- s.files = `git ls-files`.split("\n") + [Pacer::Titan::JAR_PATH]
17
+ s.files = `git ls-files`.split("\n")
18
18
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
19
19
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
20
  s.require_paths = ["lib"]
metadata CHANGED
@@ -1,30 +1,30 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pacer-titan
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.7
5
5
  platform: java
6
6
  authors:
7
7
  - Ilya Kardailsky
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-15 00:00:00.000000000 Z
11
+ date: 2015-06-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: pacer
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
16
  - - '>='
18
17
  - !ruby/object:Gem::Version
19
- version: 1.4.0
20
- type: :runtime
18
+ version: 2.0.6
19
+ name: pacer
21
20
  prerelease: false
21
+ type: :runtime
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '>='
25
25
  - !ruby/object:Gem::Version
26
- version: 1.4.0
27
- description: Titan jars and related code for Pacer
26
+ version: 2.0.6
27
+ description: Titan adapter for Pacer
28
28
  email:
29
29
  - ilya.kardailsky@gmail.com
30
30
  executables: []
@@ -33,25 +33,26 @@ extra_rdoc_files: []
33
33
  files:
34
34
  - .gitignore
35
35
  - Gemfile
36
+ - Jarfile
36
37
  - LICENSE.txt
37
38
  - README.md
38
39
  - Rakefile
39
40
  - config/cassandra-es.properties
40
41
  - config/inmemory.properties
41
42
  - lib/pacer-titan.rb
43
+ - lib/pacer-titan/create_vertex.rb
44
+ - lib/pacer-titan/encoder.rb
42
45
  - lib/pacer-titan/external_index_query.rb
43
46
  - lib/pacer-titan/graph.rb
44
47
  - lib/pacer-titan/rspec.rb
45
48
  - lib/pacer-titan/titan_query.rb
46
49
  - lib/pacer-titan/version.rb
50
+ - lib/pacer-titan/vertex_query.rb
47
51
  - pacer-titan.gemspec
48
- - pom.xml
49
- - pom/standalone.xml
50
- - lib/pacer-titan-0.0.3-standalone.jar
51
52
  homepage: http://www.github.com
52
53
  licenses: []
53
54
  metadata: {}
54
- post_install_message:
55
+ post_install_message:
55
56
  rdoc_options: []
56
57
  require_paths:
57
58
  - lib
@@ -66,9 +67,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
66
67
  - !ruby/object:Gem::Version
67
68
  version: '0'
68
69
  requirements: []
69
- rubyforge_project:
70
- rubygems_version: 2.0.3
71
- signing_key:
70
+ rubyforge_project:
71
+ rubygems_version: 2.4.5
72
+ signing_key:
72
73
  specification_version: 4
73
- summary: Titan jars and related code for Pacer
74
+ summary: Titan adapter for Pacer
74
75
  test_files: []
data/pom.xml DELETED
@@ -1,130 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project xmlns="http://maven.apache.org/POM/4.0.0"
3
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
5
- <modelVersion>4.0.0</modelVersion>
6
- <groupId>com.tinkerpop.pacer</groupId>
7
- <artifactId>pacer-titan</artifactId>
8
- <!-- NOTE: the following properties are automatically updated based on the values in lib/pacer-titan/version.rb -->
9
- <properties>
10
- <gem.version>0.0.3</gem.version>
11
- <blueprints.version>2.4.0</blueprints.version>
12
- <pipes.version>2.4.0</pipes.version>
13
- <titan.version>0.4.2</titan.version>
14
- </properties>
15
- <!-- NOTE: the following properties are automatically updated based on the values in lib/pacer-titan/version.rb -->
16
- <version>${gem.version}</version>
17
- <packaging>pom</packaging>
18
- <url>https://github.com/pangloss/pacer</url>
19
- <name>Pacer Titan dependencies and related code.</name>
20
- <description>
21
- </description>
22
- <inceptionYear>2014</inceptionYear>
23
- <developers>
24
- <developer>
25
- <name>Ilya Kardailsky</name>
26
- <email>ilya.kardailsky@gmail.com</email>
27
- <url>http://github.com</url>
28
- </developer>
29
- </developers>
30
- <dependencies>
31
- <!-- PROPERTY GRAPH MODEL SUPPORT -->
32
- <dependency>
33
- <groupId>com.tinkerpop.blueprints</groupId>
34
- <artifactId>blueprints-core</artifactId>
35
- <version>${blueprints.version}</version>
36
- </dependency>
37
- <!-- GRAPH TRAVERSAL SUPPORT -->
38
- <dependency>
39
- <groupId>com.tinkerpop</groupId>
40
- <artifactId>pipes</artifactId>
41
- <version>${pipes.version}</version>
42
- </dependency>
43
- <!-- TITAN SUPPORT -->
44
- <dependency>
45
- <groupId>com.thinkaurelius.titan</groupId>
46
- <artifactId>titan-core</artifactId>
47
- <version>${titan.version}</version>
48
- </dependency>
49
- </dependencies>
50
-
51
- <repositories>
52
- <repository>
53
- <id>tinkerpop-repository</id>
54
- <name>TinkerPop Maven2 Repository</name>
55
- <url>http://tinkerpop.com/maven2</url>
56
- <snapshots>
57
- <enabled>true</enabled>
58
- <updatePolicy>always</updatePolicy>
59
- </snapshots>
60
- </repository>
61
- </repositories>
62
-
63
- <distributionManagement>
64
- <repository>
65
- <id>tinkerpop-repository</id>
66
- <name>TinkerPop Maven2 Repository</name>
67
- <url>ftp://ftp.tinkerpop.com:21/public/maven2/</url>
68
- </repository>
69
- </distributionManagement>
70
-
71
- <build>
72
- <directory>${basedir}/target</directory>
73
- <finalName>${project.artifactId}-${project.version}</finalName>
74
- <resources>
75
- <resource>
76
- <directory>${basedir}/src/main/resources
77
- </directory>
78
- </resource>
79
- </resources>
80
- <testResources>
81
- <testResource>
82
- <directory>${basedir}/src/test/resources
83
- </directory>
84
- </testResource>
85
- </testResources>
86
- <plugins>
87
- <plugin>
88
- <artifactId>maven-compiler-plugin</artifactId>
89
- <configuration>
90
- <source>1.6</source>
91
- <target>1.6</target>
92
- </configuration>
93
- </plugin>
94
- <plugin>
95
- <artifactId>maven-assembly-plugin</artifactId>
96
- <version>2.2-beta-4</version>
97
- <executions>
98
- <execution>
99
- <phase>package</phase>
100
- <goals>
101
- <goal>attached</goal>
102
- </goals>
103
- </execution>
104
- </executions>
105
- <configuration>
106
- <descriptors>
107
- <descriptor>pom/standalone.xml</descriptor>
108
- </descriptors>
109
- <finalName>${project.artifactId}-${project.version}</finalName>
110
- <outputDirectory>lib</outputDirectory>
111
- <workDirectory>target/assembly/work</workDirectory>
112
- <tarLongFileMode>warn</tarLongFileMode>
113
- </configuration>
114
- </plugin>
115
- <plugin>
116
- <groupId>org.apache.maven.plugins</groupId>
117
- <artifactId>maven-javadoc-plugin</artifactId>
118
- <version>2.6.1</version>
119
- </plugin>
120
- </plugins>
121
- <extensions>
122
- <extension>
123
- <groupId>org.apache.maven.wagon</groupId>
124
- <artifactId>wagon-ftp</artifactId>
125
- <version>1.0-alpha-6</version>
126
- </extension>
127
- </extensions>
128
- </build>
129
-
130
- </project>
@@ -1,22 +0,0 @@
1
- <assembly>
2
- <id>standalone</id>
3
- <formats>
4
- <format>jar</format>
5
- </formats>
6
- <includeBaseDirectory>false</includeBaseDirectory>
7
-
8
- <fileSets>
9
- <fileSet>
10
- <directory>target/classes</directory>
11
- <outputDirectory>/</outputDirectory>
12
- </fileSet>
13
- </fileSets>
14
-
15
- <dependencySets>
16
- <dependencySet>
17
- <outputDirectory>/</outputDirectory>
18
- <unpack>true</unpack>
19
- <scope>runtime</scope>
20
- </dependencySet>
21
- </dependencySets>
22
- </assembly>