dm-postgis 1.0.1 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source :rubyforge
2
+
3
+ gem "GeoRuby"
4
+
data/Rakefile CHANGED
@@ -1,5 +1,6 @@
1
1
  require 'rubygems'
2
2
  require 'rake'
3
+ require 'bundler'
3
4
 
4
5
  begin
5
6
  require 'jeweler'
@@ -10,7 +11,7 @@ begin
10
11
  gem.email = "roman.kamyk@gmail.com"
11
12
  gem.homepage = "http://github.com/rkj/dm-postgis"
12
13
  gem.authors = ["Roman Kamyk jr"]
13
- gem.add_dependency 'GeoRuby', '>= 1.3.4'
14
+ gem.add_bundler_dependencies
14
15
  end
15
16
  Jeweler::GemcutterTasks.new
16
17
  rescue LoadError
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.1
1
+ 1.1.0
@@ -0,0 +1,9 @@
1
+ require 'postgis_adapter'
2
+ require 'dm-postgres-adapter'
3
+ module DataMapper
4
+ module Adapters
5
+ class PostgisAdapter < PostgresAdapter
6
+ include DataMapper::Migrations::PostgisAdapter
7
+ end
8
+ end
9
+ end
data/lib/dm-postgis.rb CHANGED
@@ -1,19 +1,19 @@
1
1
  require 'geo_ruby'
2
2
 
3
3
  module DataMapper
4
- module Types
5
- class DMGeometry < DataMapper::Type
4
+ class Property
5
+ class DMGeometry < Property
6
6
  include GeoRuby::SimpleFeatures
7
-
8
- primitive Text
7
+ primitive ::Object
9
8
  default nil
9
+ # length nil
10
10
  lazy false
11
11
 
12
- def self.dump(value, property)
12
+ def dump(value)
13
13
  value.nil? ? nil : value.as_hex_ewkb
14
14
  end
15
15
 
16
- def self.load(value, property)
16
+ def load(value)
17
17
  value.nil? ? nil : Geometry.from_hex_ewkb(value)
18
18
  end
19
19
 
@@ -23,12 +23,4 @@ module DataMapper
23
23
  end
24
24
  end # class Text
25
25
  end # module Types
26
-
27
- class Property
28
- PRIMITIVES << DataMapper::Types::DMGeometry
29
- def typecast_to_geometry(raw_value)
30
- return nil if raw_value.nil? || raw_value.empty?
31
- return GeoRuby::SimpleFeatures::Geometry.from_hex_ewkb(raw_value)
32
- end
33
- end
34
26
  end # module DataMapper
@@ -0,0 +1,28 @@
1
+ require 'do_postgres'
2
+
3
+ module DataObjects
4
+ module Postgis
5
+ include Postgres
6
+ end
7
+ end
8
+
9
+ require 'dm-migrations/adapters/dm-postgres-adapter'
10
+ module DataMapper
11
+ module Migrations
12
+ module PostgisAdapter
13
+ include DataMapper::Migrations::PostgresAdapter
14
+ def self.included(base)
15
+ base.extend DataObjectsAdapter::ClassMethods
16
+ base.extend ClassMethods
17
+ end
18
+
19
+ module ClassMethods
20
+ def type_map
21
+ @type_map ||= super.merge(
22
+ DataMapper::Property::DMGeometry => { :primitive => 'GEOMETRY' }
23
+ ).freeze
24
+ end # type_map
25
+ end # module ClassMethods
26
+ end # class PostgresAdapter
27
+ end # module Migration
28
+ end # module
metadata CHANGED
@@ -1,7 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dm-postgis
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ prerelease: false
5
+ segments:
6
+ - 1
7
+ - 1
8
+ - 0
9
+ version: 1.1.0
5
10
  platform: ruby
6
11
  authors:
7
12
  - Roman Kamyk jr
@@ -9,19 +14,21 @@ autorequire:
9
14
  bindir: bin
10
15
  cert_chain: []
11
16
 
12
- date: 2010-02-16 00:00:00 +01:00
17
+ date: 2010-06-16 00:00:00 +02:00
13
18
  default_executable:
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
16
- name: GeoRuby
17
21
  type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
22
+ name: GeoRuby
23
+ version_requirements: &id001 !ruby/object:Gem::Requirement
20
24
  requirements:
21
25
  - - ">="
22
26
  - !ruby/object:Gem::Version
23
- version: 1.3.4
24
- version:
27
+ segments:
28
+ - 0
29
+ version: "0"
30
+ requirement: *id001
31
+ prerelease: false
25
32
  description: Adds DMGeometry type to DataMapper that uses GeoRuby for (de)serializing Geometry types into Postgis
26
33
  email: roman.kamyk@gmail.com
27
34
  executables: []
@@ -34,11 +41,14 @@ extra_rdoc_files:
34
41
  files:
35
42
  - .document
36
43
  - .gitignore
44
+ - Gemfile
37
45
  - LICENSE
38
46
  - README.rdoc
39
47
  - Rakefile
40
48
  - VERSION
49
+ - lib/dm-postgis-adapter.rb
41
50
  - lib/dm-postgis.rb
51
+ - lib/postgis_adapter.rb
42
52
  has_rdoc: true
43
53
  homepage: http://github.com/rkj/dm-postgis
44
54
  licenses: []
@@ -52,18 +62,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
52
62
  requirements:
53
63
  - - ">="
54
64
  - !ruby/object:Gem::Version
65
+ segments:
66
+ - 0
55
67
  version: "0"
56
- version:
57
68
  required_rubygems_version: !ruby/object:Gem::Requirement
58
69
  requirements:
59
70
  - - ">="
60
71
  - !ruby/object:Gem::Version
72
+ segments:
73
+ - 0
61
74
  version: "0"
62
- version:
63
75
  requirements: []
64
76
 
65
77
  rubyforge_project:
66
- rubygems_version: 1.3.5
78
+ rubygems_version: 1.3.6
67
79
  signing_key:
68
80
  specification_version: 3
69
81
  summary: Geometry type for DataMapper