ruby-fs-stack 0.1.7 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. data/README.rdoc +70 -5
  2. data/Rakefile +1 -3
  3. data/VERSION +1 -1
  4. data/ruby-fs-stack.gemspec +89 -0
  5. metadata +5 -14
@@ -5,22 +5,87 @@ API modules provided by FamilySearch.
5
5
 
6
6
  == Installation
7
7
 
8
- This project is being configured as a Ruby Gem. Instructions will be posted here
9
- as soon you can install the gem from RubyForge.
8
+ If you haven't added gemcutter.org to your gem sources, run
9
+
10
+ gem sources -a http://gemcutter.org
11
+
12
+ Install the ruby-fs-stack gem
13
+
14
+ sudo gem install ruby-fs-stack
15
+
16
+ === JSON gem
17
+ Ruby-fs-stack needs a json gem, but does not force it as a dependency.
18
+
19
+ sudo gem install json
20
+
21
+ or if you are using JRuby
22
+
23
+ sudo gem install json-jruby
24
+
25
+ or for the pure Ruby implementation
26
+
27
+ sudo gem install json_pure
10
28
 
11
29
  == Example Usage
12
30
 
13
- # Example code will be posted here as soon as it is packaged as a gem.
31
+ === Authenticating with FamilySearch
32
+
33
+ require 'ruby-fs-stack'
34
+
35
+ communicator = FsCommunicator.new :domain => 'http://www.dev.usys.org', # or 'https://api.familysearch.org'
36
+ :key => 'DEVELOPER-KEY',
37
+ :user_agent => 'Ruby-Fs-Stack/v.1 (JimmyZimmerman) FsCommunicator/0.1 (Ruby)'
38
+
39
+ communicator.identity_v1.authenticate :username => 'USERNAME', :password => 'PASSWORD' #=> true
40
+ communicator.session #=> "USYSE4EF197..."
14
41
 
15
- See examples/login_example.rb[http://github.com/jimmyz/ruby-fs-stack/tree/master/examples/login_example.rb]
42
+ === Reading Person Records
16
43
 
17
- See examples/familytree_example.rb[http://github.com/jimmyz/ruby-fs-stack/tree/master/examples/familytree_example.rb]
44
+ me = communicator.familytree_v2.person :me
45
+ puts "My name: " + me.full_name
46
+ puts "My birthdate: " + me.birth.value.date.normalized
47
+
48
+ # Read only the version number for a person
49
+ vperson = communicator.familytree_v2.person 'KW3B-NNM', :names => 'none', :genders => 'none', :events => 'none'
50
+ puts "Person's version: " + vperson.person
51
+
52
+ # read the person and the parent, family, and child information
53
+ person = ftcom.person 'KW3B-NNM', :parents => 'summary', :families => 'all', :children => 'all'
54
+
55
+ puts "Gender: " + person.gender
56
+ puts "First parent ID: " + person.parents[0].parents[0].id
57
+ puts "First child ID: " + person.families[0].children[0].id
58
+ puts "First spouse's gender: " + person.families[0].parents[1].gender
59
+ puts "First spouse's ID: " + person.families[0].parents[1].id
60
+
61
+ === Searching Records
62
+
63
+ search = communicator.familytree_v2.search :givenName => "John",
64
+ :familyName => "Doe",
65
+ :birthDate => "12 Jun 1812",
66
+ :birthPlace => "Virginia, United States",
67
+ :father => {:givenName => "Robert"},
68
+ :maxResults => 10
69
+ search.count #=> 10
70
+ search.close #=> 2
71
+ search.partial #=> 16
72
+ search.results.each do |result|
73
+ puts result.score #=> 4.0
74
+ puts result.id #=> "KW3B-JXV"
75
+ puts result.person.full_name #=> "John Doe"
76
+ puts result.person.birth.date.original #=> "abt 1812"
77
+ puts result.father.full_name #=> "Robert Doe"
78
+ puts result.mother.full_name #=> "Ruby Johnson"
79
+ puts result.spouses.first.full_name #=> "Sarah Franklin"
80
+ end
18
81
 
19
82
  == Discussion
20
83
 
21
84
  A Google Group has been set up for questions and discussion
22
85
  around the ruby-fs-stack project.
23
86
 
87
+ http://groups.google.com/group/ruby-fs-stack
88
+
24
89
  == Copyright
25
90
 
26
91
  Copyright (c) 2009 Jimmy Zimmerman. See LICENSE for details.
data/Rakefile CHANGED
@@ -11,9 +11,7 @@ begin
11
11
  gem.homepage = "http://github.com/jimmyz/ruby-fs-stack"
12
12
  gem.authors = ["Jimmy Zimmerman"]
13
13
  gem.add_development_dependency "rspec"
14
- gem.add_dependency('json', '>=1.1.7')
15
- gem.files << "lib/ruby-fs-stack/enunciate/identity.rb"
16
- gem.files << "lib/ruby-fs-stack/enunciate/familytree.rb"
14
+ gem.requirements << "This gem requires a json gem (json, json_pure, or json-jruby)."
17
15
  # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
18
16
  end
19
17
  rescue LoadError
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.7
1
+ 0.2.0
@@ -0,0 +1,89 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{ruby-fs-stack}
8
+ s.version = "0.2.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Jimmy Zimmerman"]
12
+ s.date = %q{2009-12-05}
13
+ s.description = %q{A library that enables you to read and update information with the new.familysearch.org API.}
14
+ s.email = %q{jimmy.zimmerman@gmail.com}
15
+ s.extra_rdoc_files = [
16
+ "LICENSE",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ ".gitignore",
22
+ "LICENSE",
23
+ "README.rdoc",
24
+ "Rakefile",
25
+ "VERSION",
26
+ "examples/familytree_example.rb",
27
+ "examples/login_example.rb",
28
+ "lib/ruby-fs-stack.rb",
29
+ "lib/ruby-fs-stack/assets/entrust-ca.crt",
30
+ "lib/ruby-fs-stack/enunciate/LICENSE",
31
+ "lib/ruby-fs-stack/enunciate/README",
32
+ "lib/ruby-fs-stack/enunciate/familytree.rb",
33
+ "lib/ruby-fs-stack/enunciate/identity.rb",
34
+ "lib/ruby-fs-stack/familytree.rb",
35
+ "lib/ruby-fs-stack/fs_communicator.rb",
36
+ "lib/ruby-fs-stack/fs_utils.rb",
37
+ "lib/ruby-fs-stack/identity.rb",
38
+ "lib/ruby-fs-stack/warning_suppressor.rb",
39
+ "ruby-fs-stack.gemspec",
40
+ "spec/communicator_spec.rb",
41
+ "spec/familytree_v2/familytree_communicator_spec.rb",
42
+ "spec/familytree_v2/json/match_KW3B-NNM.js",
43
+ "spec/familytree_v2/json/person/KJ86-3VD_all.js",
44
+ "spec/familytree_v2/json/person/KJ86-3VD_version.js",
45
+ "spec/familytree_v2/json/person/post_response.js",
46
+ "spec/familytree_v2/json/person/relationship_not_found.js",
47
+ "spec/familytree_v2/json/person/relationship_read.js",
48
+ "spec/familytree_v2/json/person/relationship_update.js",
49
+ "spec/familytree_v2/json/search.js",
50
+ "spec/familytree_v2/person_spec.rb",
51
+ "spec/familytree_v2/search_results_spec.rb",
52
+ "spec/fs_utils_spec.rb",
53
+ "spec/identity_v1/identity_spec.rb",
54
+ "spec/identity_v1/json/login.js",
55
+ "spec/ruby-fs-stack_spec.rb",
56
+ "spec/spec_helper.rb"
57
+ ]
58
+ s.homepage = %q{http://github.com/jimmyz/ruby-fs-stack}
59
+ s.rdoc_options = ["--charset=UTF-8"]
60
+ s.require_paths = ["lib"]
61
+ s.requirements = ["This gem requires a json gem (json, json_pure, or json-jruby)."]
62
+ s.rubygems_version = %q{1.3.5}
63
+ s.summary = %q{Ruby wrapper for all FamilySearch APIs.}
64
+ s.test_files = [
65
+ "spec/communicator_spec.rb",
66
+ "spec/familytree_v2/familytree_communicator_spec.rb",
67
+ "spec/familytree_v2/person_spec.rb",
68
+ "spec/familytree_v2/search_results_spec.rb",
69
+ "spec/fs_utils_spec.rb",
70
+ "spec/identity_v1/identity_spec.rb",
71
+ "spec/ruby-fs-stack_spec.rb",
72
+ "spec/spec_helper.rb",
73
+ "examples/familytree_example.rb",
74
+ "examples/login_example.rb"
75
+ ]
76
+
77
+ if s.respond_to? :specification_version then
78
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
79
+ s.specification_version = 3
80
+
81
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
82
+ s.add_development_dependency(%q<rspec>, [">= 0"])
83
+ else
84
+ s.add_dependency(%q<rspec>, [">= 0"])
85
+ end
86
+ else
87
+ s.add_dependency(%q<rspec>, [">= 0"])
88
+ end
89
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-fs-stack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jimmy Zimmerman
@@ -22,16 +22,6 @@ dependencies:
22
22
  - !ruby/object:Gem::Version
23
23
  version: "0"
24
24
  version:
25
- - !ruby/object:Gem::Dependency
26
- name: json
27
- type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: 1.1.7
34
- version:
35
25
  description: A library that enables you to read and update information with the new.familysearch.org API.
36
26
  email: jimmy.zimmerman@gmail.com
37
27
  executables: []
@@ -61,6 +51,7 @@ files:
61
51
  - lib/ruby-fs-stack/fs_utils.rb
62
52
  - lib/ruby-fs-stack/identity.rb
63
53
  - lib/ruby-fs-stack/warning_suppressor.rb
54
+ - ruby-fs-stack.gemspec
64
55
  - spec/communicator_spec.rb
65
56
  - spec/familytree_v2/familytree_communicator_spec.rb
66
57
  - spec/familytree_v2/json/match_KW3B-NNM.js
@@ -99,12 +90,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
90
  - !ruby/object:Gem::Version
100
91
  version: "0"
101
92
  version:
102
- requirements: []
103
-
93
+ requirements:
94
+ - This gem requires a json gem (json, json_pure, or json-jruby).
104
95
  rubyforge_project:
105
96
  rubygems_version: 1.3.5
106
97
  signing_key:
107
- specification_version: 2
98
+ specification_version: 3
108
99
  summary: Ruby wrapper for all FamilySearch APIs.
109
100
  test_files:
110
101
  - spec/communicator_spec.rb