diametric 0.1.1-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.
Files changed (73) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +28 -0
  3. data/Jarfile +20 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +264 -0
  6. data/Rakefile +49 -0
  7. data/bin/datomic-rest +33 -0
  8. data/bin/download-datomic +13 -0
  9. data/datomic_version.yml +4 -0
  10. data/diametric-java.gemspec +39 -0
  11. data/ext/diametric/DiametricCollection.java +147 -0
  12. data/ext/diametric/DiametricConnection.java +113 -0
  13. data/ext/diametric/DiametricDatabase.java +107 -0
  14. data/ext/diametric/DiametricEntity.java +90 -0
  15. data/ext/diametric/DiametricListenableFuture.java +47 -0
  16. data/ext/diametric/DiametricObject.java +66 -0
  17. data/ext/diametric/DiametricPeer.java +414 -0
  18. data/ext/diametric/DiametricService.java +102 -0
  19. data/ext/diametric/DiametricUUID.java +61 -0
  20. data/ext/diametric/DiametricUtils.java +183 -0
  21. data/lib/boolean_type.rb +3 -0
  22. data/lib/diametric.rb +42 -0
  23. data/lib/diametric/config.rb +54 -0
  24. data/lib/diametric/config/environment.rb +42 -0
  25. data/lib/diametric/entity.rb +659 -0
  26. data/lib/diametric/errors.rb +13 -0
  27. data/lib/diametric/generators/active_model.rb +42 -0
  28. data/lib/diametric/persistence.rb +48 -0
  29. data/lib/diametric/persistence/common.rb +82 -0
  30. data/lib/diametric/persistence/peer.rb +154 -0
  31. data/lib/diametric/persistence/rest.rb +107 -0
  32. data/lib/diametric/query.rb +259 -0
  33. data/lib/diametric/railtie.rb +52 -0
  34. data/lib/diametric/rest_service.rb +74 -0
  35. data/lib/diametric/service_base.rb +77 -0
  36. data/lib/diametric/transactor.rb +86 -0
  37. data/lib/diametric/version.rb +3 -0
  38. data/lib/diametric_service.jar +0 -0
  39. data/lib/tasks/create_schema.rb +27 -0
  40. data/lib/tasks/diametric_config.rb +45 -0
  41. data/lib/value_enums.rb +8 -0
  42. data/spec/conf_helper.rb +55 -0
  43. data/spec/config/free-transactor-template.properties +73 -0
  44. data/spec/config/logback.xml +59 -0
  45. data/spec/data/seattle-data0.dtm +452 -0
  46. data/spec/data/seattle-data1.dtm +326 -0
  47. data/spec/developer_create_sample.rb +39 -0
  48. data/spec/developer_query_spec.rb +120 -0
  49. data/spec/diametric/config_spec.rb +60 -0
  50. data/spec/diametric/entity_spec.rb +476 -0
  51. data/spec/diametric/peer_api_spec.rb +147 -0
  52. data/spec/diametric/persistence/peer_many2many_spec.rb +76 -0
  53. data/spec/diametric/persistence/peer_spec.rb +27 -0
  54. data/spec/diametric/persistence/rest_spec.rb +30 -0
  55. data/spec/diametric/persistence_spec.rb +59 -0
  56. data/spec/diametric/query_spec.rb +118 -0
  57. data/spec/diametric/rest_service_spec.rb +56 -0
  58. data/spec/diametric/transactor_spec.rb +68 -0
  59. data/spec/integration_spec.rb +107 -0
  60. data/spec/parent_child_sample.rb +42 -0
  61. data/spec/peer_integration_spec.rb +121 -0
  62. data/spec/peer_seattle_spec.rb +200 -0
  63. data/spec/rc2013_seattle_big.rb +82 -0
  64. data/spec/rc2013_seattle_small.rb +60 -0
  65. data/spec/rc2013_simple_sample.rb +72 -0
  66. data/spec/seattle_integration_spec.rb +106 -0
  67. data/spec/simple_validation_sample.rb +31 -0
  68. data/spec/spec_helper.rb +63 -0
  69. data/spec/support/entities.rb +157 -0
  70. data/spec/support/gen_entity_class.rb +9 -0
  71. data/spec/support/persistence_examples.rb +104 -0
  72. data/spec/test_version_file.yml +4 -0
  73. metadata +290 -0
@@ -0,0 +1,326 @@
1
+ [
2
+ {:district/region :district.region/se, :db/id #db/id[:db.part/user -1000451], :district/name "Greater Duwamish"}
3
+ {:db/id #db/id[:db.part/user -1000452], :neighborhood/name "Beacon Hill", :neighborhood/district #db/id[:db.part/user -1000451]}
4
+ {:community/category ["community members"], :community/orgtype :community.orgtype/community, :community/type :community.type/email-list, :db/id #db/id[:db.part/user -1000453], :community/name "nbeaconhillneighbors", :community/url "http://groups.yahoo.com/group/nbeaconhillneighbors/", :community/neighborhood #db/id[:db.part/user -1000452]}
5
+ {:district/region :district.region/se, :db/id #db/id[:db.part/user -1000454], :district/name "Southeast"}
6
+ {:db/id #db/id[:db.part/user -1000455], :neighborhood/name "Rainier Valley", :neighborhood/district #db/id[:db.part/user -1000454]}
7
+ {:community/category ["services portal"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000456], :community/name "New Holly Neighborhood Campus", :community/url "http://www.newholly.org/", :community/neighborhood #db/id[:db.part/user -1000455]}
8
+ {:db/id #db/id[:db.part/user -1000457], :district/name "Southeast"}
9
+ {:db/id #db/id[:db.part/user -1000458], :neighborhood/name "Rainier Beach", :neighborhood/district #db/id[:db.part/user -1000457]}
10
+ {:community/category ["news" "events" "human interest" "criminal activity" "shopping"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000459], :community/name "New Rainier Vista", :community/url "http://newrainiervista.com/public/about/", :community/neighborhood #db/id[:db.part/user -1000458]}
11
+ {:db/id #db/id[:db.part/user -1000460], :district/name "Greater Duwamish"}
12
+ {:db/id #db/id[:db.part/user -1000461], :neighborhood/name "Beacon Hill"}
13
+ {:community/category ["community council"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000462], :community/name "North Beacon Hill", :community/url "http://north-beacon-hill.blogspot.com/", :community/neighborhood #db/id[:db.part/user -1000461]}
14
+ {:db/id #db/id[:db.part/user -1000463], :district/name "Greater Duwamish"}
15
+ {:db/id #db/id[:db.part/user -1000464], :neighborhood/name "Beacon Hill"}
16
+ {:community/category ["community group"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000465], :community/name "North Beacon Hill Council", :community/url "http://www.cityofseattle.net/commnty/Beacon/groups/nbhc/", :community/neighborhood #db/id[:db.part/user -1000464]}
17
+ {:district/region :district.region/e, :db/id #db/id[:db.part/user -1000466], :district/name "East"}
18
+ {:db/id #db/id[:db.part/user -1000467], :neighborhood/name "Capitol Hill", :neighborhood/district #db/id[:db.part/user -1000466]}
19
+ {:community/category ["meeting notes" "relevant news"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000468], :community/name "North Capitol Hill Neighborhood Association", :community/url "http://www.nchna.com/", :community/neighborhood #db/id[:db.part/user -1000467]}
20
+ {:district/region :district.region/sw, :db/id #db/id[:db.part/user -1000469], :district/name "Delridge"}
21
+ {:db/id #db/id[:db.part/user -1000470], :neighborhood/name "Delridge", :neighborhood/district #db/id[:db.part/user -1000469]}
22
+ {:community/category ["events calendar"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000471], :community/name "North Delridge Neighborhood Council", :community/url "http://ndnc.org/", :community/neighborhood #db/id[:db.part/user -1000470]}
23
+ {:district/region :district.region/ne, :db/id #db/id[:db.part/user -1000472], :district/name "North"}
24
+ {:db/id #db/id[:db.part/user -1000473], :neighborhood/name "Northgate", :neighborhood/district #db/id[:db.part/user -1000472]}
25
+ {:community/category ["chamber of commerce"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000474], :community/name "Northgate Chamber of Commerce", :community/url "http://www.northgatechamber.com/", :community/neighborhood #db/id[:db.part/user -1000473]}
26
+ {:district/region :district.region/nw, :db/id #db/id[:db.part/user -1000475], :district/name "Northwest"}
27
+ {:db/id #db/id[:db.part/user -1000476], :neighborhood/name "Northwest", :neighborhood/district #db/id[:db.part/user -1000475]}
28
+ {:community/category ["district council"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000477], :community/name "Northwest District Council", :community/url "http://www.nwdistrictcouncil.org/", :community/neighborhood #db/id[:db.part/user -1000476]}
29
+ {:district/region :district.region/sw, :db/id #db/id[:db.part/user -1000478], :district/name "Southwest"}
30
+ {:db/id #db/id[:db.part/user -1000479], :neighborhood/name "High Point", :neighborhood/district #db/id[:db.part/user -1000478]}
31
+ {:community/category ["neighborhood association"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000480], :community/name "Official Website of the High Point Neighborhood", :community/url "http://www.highpointneighborhood.org/", :community/neighborhood #db/id[:db.part/user -1000479]}
32
+ {:db/id #db/id[:db.part/user -1000481], :district/name "Southeast"}
33
+ {:db/id #db/id[:db.part/user -1000482], :neighborhood/name "Othello", :neighborhood/district #db/id[:db.part/user -1000481]}
34
+ {:community/category ["neighborhood association"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000483], :community/name "Othello Neighborhood Association", :community/url "http://othello.talkspot.com/", :community/neighborhood #db/id[:db.part/user -1000482]}
35
+ {:db/id #db/id[:db.part/user -1000484], :district/name "Northwest"}
36
+ {:db/id #db/id[:db.part/user -1000485], :neighborhood/name "Phinney Ridge", :neighborhood/district #db/id[:db.part/user -1000484]}
37
+ {:community/category ["association news and events"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000486], :community/name "Phinney Neighborhood Association", :community/url "http://phinneycenter.blogspot.com/", :community/neighborhood #db/id[:db.part/user -1000485]}
38
+ {:db/id #db/id[:db.part/user -1000487], :district/name "Northwest"}
39
+ {:db/id #db/id[:db.part/user -1000488], :neighborhood/name "Phinney Ridge"}
40
+ {:community/category ["neighborhood association"], :community/orgtype :community.orgtype/community, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000489], :community/name "Phinney Neighborhood Association", :community/url "http://www.facebook.com/group.php?gid=42314991794", :community/neighborhood #db/id[:db.part/user -1000488]}
41
+ {:db/id #db/id[:db.part/user -1000490], :district/name "Northwest"}
42
+ {:db/id #db/id[:db.part/user -1000491], :neighborhood/name "Phinney Ridge"}
43
+ {:community/category ["neighborhood association"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000492], :community/name "Phinney Neighborhood Association", :community/url "http://www.phinneycenter.org/", :community/neighborhood #db/id[:db.part/user -1000491]}
44
+ {:db/id #db/id[:db.part/user -1000493], :district/name "Northwest"}
45
+ {:db/id #db/id[:db.part/user -1000494], :neighborhood/name "Phinney Ridge"}
46
+ {:community/category ["news" "events" "food" "shopping"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000495], :community/name "PhinneyWood", :community/url "http://www.phinneywood.com/", :community/neighborhood #db/id[:db.part/user -1000494]}
47
+ {:db/id #db/id[:db.part/user -1000496], :district/name "North"}
48
+ {:db/id #db/id[:db.part/user -1000497], :neighborhood/name "Pinehurst", :neighborhood/district #db/id[:db.part/user -1000496]}
49
+ {:community/category ["news" "events" "issues"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000498], :community/name "Pinehurst Seattle", :community/url "http://pinehurstseattle.org", :community/neighborhood #db/id[:db.part/user -1000497]}
50
+ {:db/id #db/id[:db.part/user -1000499], :district/name "North"}
51
+ {:db/id #db/id[:db.part/user -1000500], :neighborhood/name "Pinehurst"}
52
+ {:community/category ["news" "events" "issues"], :community/orgtype :community.orgtype/community, :community/type :community.type/twitter, :db/id #db/id[:db.part/user -1000501], :community/name "Pinehurst Seattle", :community/url "http://twitter.com/pinehurstsea", :community/neighborhood #db/id[:db.part/user -1000500]}
53
+ {:db/id #db/id[:db.part/user -1000502], :district/name "North"}
54
+ {:db/id #db/id[:db.part/user -1000503], :neighborhood/name "Pinehurst"}
55
+ {:community/category ["news" "events" "issues"], :community/orgtype :community.orgtype/community, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000504], :community/name "Pinehurst Seattle", :community/url "http://www.facebook.com/#!/group.php?gid=53590206898&v=wall&ref=search", :community/neighborhood #db/id[:db.part/user -1000503]}
56
+ {:district/region :district.region/w, :db/id #db/id[:db.part/user -1000505], :district/name "Downtown"}
57
+ {:db/id #db/id[:db.part/user -1000506], :neighborhood/name "Pioneer Square", :neighborhood/district #db/id[:db.part/user -1000505]}
58
+ {:community/category ["community organization"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000507], :community/name "Pioneer Square Community Association", :community/url "http://www.pioneersquare.org/", :community/neighborhood #db/id[:db.part/user -1000506]}
59
+ {:district/region :district.region/w, :db/id #db/id[:db.part/user -1000508], :district/name "Magnolia/Queen Anne"}
60
+ {:db/id #db/id[:db.part/user -1000509], :neighborhood/name "Queen Anne", :neighborhood/district #db/id[:db.part/user -1000508]}
61
+ {:community/category ["chamber of commerce"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000510], :community/name "Queen Anne Chamber of Commerce", :community/url "http://qachamber.org/", :community/neighborhood #db/id[:db.part/user -1000509]}
62
+ {:db/id #db/id[:db.part/user -1000511], :district/name "Magnolia/Queen Anne"}
63
+ {:db/id #db/id[:db.part/user -1000512], :neighborhood/name "Queen Anne"}
64
+ {:community/category ["community council"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000513], :community/name "Queen Anne Community Council", :community/url "http://www.qacc.net/", :community/neighborhood #db/id[:db.part/user -1000512]}
65
+ {:db/id #db/id[:db.part/user -1000514], :district/name "Magnolia/Queen Anne"}
66
+ {:db/id #db/id[:db.part/user -1000515], :neighborhood/name "Queen Anne"}
67
+ {:community/category ["news" "local issues"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000516], :community/name "Queen Anne Examiner", :community/url "http://www.examiner.com/x-8856-Seattle-Queen-Anne-Hill-Examiner", :community/neighborhood #db/id[:db.part/user -1000515]}
68
+ {:db/id #db/id[:db.part/user -1000517], :district/name "Magnolia/Queen Anne"}
69
+ {:db/id #db/id[:db.part/user -1000518], :neighborhood/name "Queen Anne"}
70
+ {:community/category ["nonprofit"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000519], :community/name "Queen Anne Helpline", :community/url "http://queenannehelpline.org/index.php", :community/neighborhood #db/id[:db.part/user -1000518]}
71
+ {:db/id #db/id[:db.part/user -1000520], :district/name "Magnolia/Queen Anne"}
72
+ {:db/id #db/id[:db.part/user -1000521], :neighborhood/name "Queen Anne"}
73
+ {:community/category ["historical society"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000522], :community/name "Queen Anne Historical Society", :community/url "http://www.qahistory.org/", :community/neighborhood #db/id[:db.part/user -1000521]}
74
+ {:db/id #db/id[:db.part/user -1000523], :district/name "Magnolia/Queen Anne"}
75
+ {:db/id #db/id[:db.part/user -1000524], :neighborhood/name "Queen Anne"}
76
+ {:community/category ["news" "events" "reviews"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000525], :community/name "Queen Anne View", :community/url "http://www.queenanneview.com/", :community/neighborhood #db/id[:db.part/user -1000524]}
77
+ {:db/id #db/id[:db.part/user -1000526], :district/name "Southeast"}
78
+ {:db/id #db/id[:db.part/user -1000527], :neighborhood/name "Rainier Beach"}
79
+ {:community/category ["news" "events" "issues"], :community/orgtype :community.orgtype/community, :community/type :community.type/twitter, :db/id #db/id[:db.part/user -1000528], :community/name "Rainier Beach Community Empowerment Coalition", :community/url "http://twitter.com/rainierbeach", :community/neighborhood #db/id[:db.part/user -1000527]}
80
+ {:db/id #db/id[:db.part/user -1000529], :district/name "Southeast"}
81
+ {:db/id #db/id[:db.part/user -1000530], :neighborhood/name "Rainier Beach"}
82
+ {:community/category ["news" "events" "issues"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000531], :community/name "Rainier Beach Community Empowerment Coalition", :community/url "http://www.rbcoalition.org/", :community/neighborhood #db/id[:db.part/user -1000530]}
83
+ {:db/id #db/id[:db.part/user -1000532], :district/name "Southeast"}
84
+ {:db/id #db/id[:db.part/user -1000533], :neighborhood/name "Rainier Valley"}
85
+ {:community/category ["historical society"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000534], :community/name "Rainier Valley Historical Society", :community/url "http://www.rainiervalleyhistory.org/", :community/neighborhood #db/id[:db.part/user -1000533]}
86
+ {:db/id #db/id[:db.part/user -1000535], :district/name "Southeast"}
87
+ {:db/id #db/id[:db.part/user -1000536], :neighborhood/name "Rainier Valley"}
88
+ {:community/category ["news" "events" "911 blotter" "food" "reviews"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000537], :community/name "Rainier Valley Post", :community/url "http://www.rainiervalleypost.com/", :community/neighborhood #db/id[:db.part/user -1000536]}
89
+ {:district/region :district.region/ne, :db/id #db/id[:db.part/user -1000538], :district/name "Northeast"}
90
+ {:db/id #db/id[:db.part/user -1000539], :neighborhood/name "Ravenna", :neighborhood/district #db/id[:db.part/user -1000538]}
91
+ {:community/category ["news" "events" "human interest" "criminal activity" "food" "shopping"], :community/orgtype :community.orgtype/community, :community/type :community.type/twitter, :db/id #db/id[:db.part/user -1000540], :community/name "Ravenna Blog", :community/url "http://twitter.com/ravennablog", :community/neighborhood #db/id[:db.part/user -1000539]}
92
+ {:db/id #db/id[:db.part/user -1000541], :district/name "Northeast"}
93
+ {:db/id #db/id[:db.part/user -1000542], :neighborhood/name "Ravenna"}
94
+ {:community/category ["news" "events" "human interest" "criminal activity" "food" "shopping"], :community/orgtype :community.orgtype/community, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000543], :community/name "Ravenna Blog", :community/url "http://www.facebook.com/pages/Ravenna-Blog/116280421718247", :community/neighborhood #db/id[:db.part/user -1000542]}
95
+ {:db/id #db/id[:db.part/user -1000544], :district/name "Northeast"}
96
+ {:db/id #db/id[:db.part/user -1000545], :neighborhood/name "Ravenna"}
97
+ {:community/category ["news" "events" "human interest" "criminal activity" "food" "shopping"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000546], :community/name "Ravenna Blog", :community/url "http://www.ravennablog.com/", :community/neighborhood #db/id[:db.part/user -1000545]}
98
+ {:db/id #db/id[:db.part/user -1000547], :district/name "Northeast"}
99
+ {:db/id #db/id[:db.part/user -1000548], :neighborhood/name "Ravenna"}
100
+ {:community/category ["community association"], :community/orgtype :community.orgtype/community, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000549], :community/name "Ravenna-Bryant Community Association", :community/url "http://www.facebook.com/pages/Ravenna-Bryant-Community-Association/153638664651035", :community/neighborhood #db/id[:db.part/user -1000548]}
101
+ {:db/id #db/id[:db.part/user -1000550], :district/name "Northeast"}
102
+ {:db/id #db/id[:db.part/user -1000551], :neighborhood/name "Ravenna"}
103
+ {:community/category ["community association"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000552], :community/name "Ravenna-Bryant Community Association", :community/url "http://www.ravennabryant.org/", :community/neighborhood #db/id[:db.part/user -1000551]}
104
+ {:db/id #db/id[:db.part/user -1000553], :district/name "Northeast"}
105
+ {:db/id #db/id[:db.part/user -1000554], :neighborhood/name "Roosevelt", :neighborhood/district #db/id[:db.part/user -1000553]}
106
+ {:community/category ["neighborhood association"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000555], :community/name "Roosevelt Neighborhood Association", :community/url "http://rooseveltseattle.org/default.aspx", :community/neighborhood #db/id[:db.part/user -1000554]}
107
+ {:db/id #db/id[:db.part/user -1000556], :district/name "Northeast"}
108
+ {:db/id #db/id[:db.part/user -1000557], :neighborhood/name "Roosevelt"}
109
+ {:community/category ["neighborhood association"], :community/orgtype :community.orgtype/community, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000558], :community/name "Roosevelt Neighborhood Association", :community/url "http://www.facebook.com/group.php?gid=178766520060", :community/neighborhood #db/id[:db.part/user -1000557]}
110
+ {:db/id #db/id[:db.part/user -1000559], :district/name "Northeast"}
111
+ {:db/id #db/id[:db.part/user -1000560], :neighborhood/name "Roosevelt"}
112
+ {:community/category ["neighborhood association"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000561], :community/name "Roosevelt Neighbors' Alliance", :community/url "http://www.rooseveltneighborsalliance.org/main/Roosevelt_Neighbors_Alliance.html", :community/neighborhood #db/id[:db.part/user -1000560]}
113
+ {:db/id #db/id[:db.part/user -1000562], :district/name "Northeast"}
114
+ {:db/id #db/id[:db.part/user -1000563], :neighborhood/name "Roosevelt"}
115
+ {:community/category ["news" "events"], :community/orgtype :community.orgtype/community, :community/type :community.type/twitter, :db/id #db/id[:db.part/user -1000564], :community/name "Roosevelt Seattle", :community/url "http://twitter.com/roosieseattle", :community/neighborhood #db/id[:db.part/user -1000563]}
116
+ {:db/id #db/id[:db.part/user -1000565], :district/name "Northeast"}
117
+ {:db/id #db/id[:db.part/user -1000566], :neighborhood/name "Roosevelt"}
118
+ {:community/category ["news" "events" "human interest" "criminal activity"], :community/orgtype :community.orgtype/community, :community/type :community.type/twitter, :db/id #db/id[:db.part/user -1000567], :community/name "Rosiehood", :community/url "http://twitter.com/Roosiehood", :community/neighborhood #db/id[:db.part/user -1000566]}
119
+ {:db/id #db/id[:db.part/user -1000568], :district/name "Northeast"}
120
+ {:db/id #db/id[:db.part/user -1000569], :neighborhood/name "Roosevelt"}
121
+ {:community/category ["news" "events" "human interest" "criminal activity"], :community/orgtype :community.orgtype/community, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000570], :community/name "Rosiehood", :community/url "http://www.facebook.com/pages/Roosevelt-Neighborhood-Blog/133948283288085", :community/neighborhood #db/id[:db.part/user -1000569]}
122
+ {:db/id #db/id[:db.part/user -1000571], :district/name "Northeast"}
123
+ {:db/id #db/id[:db.part/user -1000572], :neighborhood/name "Roosevelt"}
124
+ {:community/category ["news" "events" "human interest" "criminal activity"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000573], :community/name "Rosiehood", :community/url "http://www.roosiehood.com/", :community/neighborhood #db/id[:db.part/user -1000572]}
125
+ {:district/region :district.region/w, :db/id #db/id[:db.part/user -1000574], :district/name "Lake Union"}
126
+ {:db/id #db/id[:db.part/user -1000575], :neighborhood/name "South Lake Union", :neighborhood/district #db/id[:db.part/user -1000574]}
127
+ {:community/category ["community council"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000576], :community/name "S Lake Union Friends and Neighbors Community Council", :community/url "http://www.slufan.org/", :community/neighborhood #db/id[:db.part/user -1000575]}
128
+ {:db/id #db/id[:db.part/user -1000577], :district/name "Downtown"}
129
+ {:db/id #db/id[:db.part/user -1000578], :neighborhood/name "International District", :neighborhood/district #db/id[:db.part/user -1000577]}
130
+ {:community/category ["public development authority"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000579], :community/name "SCIPDA", :community/url "http://www.scidpda.org/", :community/neighborhood #db/id[:db.part/user -1000578]}
131
+ {:db/id #db/id[:db.part/user -1000580], :district/name "East"}
132
+ {:db/id #db/id[:db.part/user -1000581], :neighborhood/name "Capitol Hill"}
133
+ {:community/category ["college"], :community/type :community.type/website, :db/id #db/id[:db.part/user -1000582], :community/name "Seattle Central Community College", :community/url "http://seattlecentral.edu/", :community/neighborhood #db/id[:db.part/user -1000581]}
134
+ {:db/id #db/id[:db.part/user -1000583], :district/name "Downtown"}
135
+ {:db/id #db/id[:db.part/user -1000584], :neighborhood/name "International District"}
136
+ {:community/category ["food" "shopping"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000585], :community/name "Seattle Chinatown Guide", :community/url "http://www.chinatownconnection.com/seattle-chinatown-international-district.htm", :community/neighborhood #db/id[:db.part/user -1000584]}
137
+ {:db/id #db/id[:db.part/user -1000586], :district/name "Greater Duwamish"}
138
+ {:db/id #db/id[:db.part/user -1000587], :neighborhood/name "Industrial District", :neighborhood/district #db/id[:db.part/user -1000586]}
139
+ {:community/category ["seattle industry"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000588], :community/name "Seattle Industry", :community/url "http://www.seattleindustry.org/", :community/neighborhood #db/id[:db.part/user -1000587]}
140
+ {:db/id #db/id[:db.part/user -1000589], :district/name "Southeast"}
141
+ {:db/id #db/id[:db.part/user -1000590], :neighborhood/name "Othello"}
142
+ {:community/category ["shared community group website"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000591], :community/name "Seattle's Othello Neighborhood", :community/url "http://othelloneighborhood.org/default.aspx", :community/neighborhood #db/id[:db.part/user -1000590]}
143
+ {:db/id #db/id[:db.part/user -1000592], :district/name "Southwest"}
144
+ {:db/id #db/id[:db.part/user -1000593], :neighborhood/name "West Seattle", :neighborhood/district #db/id[:db.part/user -1000592]}
145
+ {:community/category ["senior center"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000594], :community/name "Senior Center West Seattle", :community/url "http://www.sc-ws.org/", :community/neighborhood #db/id[:db.part/user -1000593]}
146
+ {:db/id #db/id[:db.part/user -1000595], :district/name "Southwest"}
147
+ {:db/id #db/id[:db.part/user -1000596], :neighborhood/name "West Seattle"}
148
+ {:community/category ["senior sevices"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000597], :community/name "Senior Services", :community/url "http://www.seniorservices.org/", :community/neighborhood #db/id[:db.part/user -1000596]}
149
+ {:district/region :district.region/nw, :db/id #db/id[:db.part/user -1000598], :district/name "Ballard"}
150
+ {:db/id #db/id[:db.part/user -1000599], :neighborhood/name "Ballard", :neighborhood/district #db/id[:db.part/user -1000598]}
151
+ {:community/category ["news" "weather" "events" "criminal activity"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000600], :community/name "Shilshole Blog", :community/url "http://shilsholecommunity.org/", :community/neighborhood #db/id[:db.part/user -1000599]}
152
+ {:db/id #db/id[:db.part/user -1000601], :district/name "Downtown"}
153
+ {:db/id #db/id[:db.part/user -1000602], :neighborhood/name "SoDo", :neighborhood/district #db/id[:db.part/user -1000601]}
154
+ {:community/category ["business association"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000603], :community/name "SoDo Business Association", :community/url "http://www.sodobusinessassociation.org/", :community/neighborhood #db/id[:db.part/user -1000602]}
155
+ {:db/id #db/id[:db.part/user -1000604], :district/name "Greater Duwamish"}
156
+ {:db/id #db/id[:db.part/user -1000605], :neighborhood/name "Industrial District"}
157
+ {:community/category ["business association"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000606], :community/name "SoDo Business Association", :community/url "http://www.sodobusinessassociation.org/", :community/neighborhood #db/id[:db.part/user -1000605]}
158
+ {:db/id #db/id[:db.part/user -1000607], :district/name "Northwest"}
159
+ {:db/id #db/id[:db.part/user -1000608], :neighborhood/name "Wallingford", :neighborhood/district #db/id[:db.part/user -1000607]}
160
+ {:community/category ["nonprofit"], :community/orgtype :community.orgtype/community, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000609], :community/name "Solid Ground", :community/url "http://www.facebook.com/pages/Solid-Ground/20665239656", :community/neighborhood #db/id[:db.part/user -1000608]}
161
+ {:db/id #db/id[:db.part/user -1000610], :district/name "Northwest"}
162
+ {:db/id #db/id[:db.part/user -1000611], :neighborhood/name "Wallingford"}
163
+ {:community/category ["nonprofit"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000612], :community/name "Solid Ground", :community/url "http://www.solid-ground.org/Pages/Default.aspx", :community/neighborhood #db/id[:db.part/user -1000611]}
164
+ {:db/id #db/id[:db.part/user -1000613], :district/name "Lake Union"}
165
+ {:db/id #db/id[:db.part/user -1000614], :neighborhood/name "South Lake Union"}
166
+ {:community/category ["chamber of commerce"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000615], :community/name "South Lake Union Chamber of Commerce", :community/url "http://www.sluchamber.org/", :community/neighborhood #db/id[:db.part/user -1000614]}
167
+ {:db/id #db/id[:db.part/user -1000616], :district/name "Greater Duwamish"}
168
+ {:db/id #db/id[:db.part/user -1000617], :neighborhood/name "South Park", :neighborhood/district #db/id[:db.part/user -1000616]}
169
+ {:community/category ["neighborhood info"], :community/orgtype :community.orgtype/community, :community/type :community.type/myspace, :db/id #db/id[:db.part/user -1000618], :community/name "South Park Seattle", :community/url "http://www.myspace.com/southparkseattle", :community/neighborhood #db/id[:db.part/user -1000617]}
170
+ {:db/id #db/id[:db.part/user -1000619], :district/name "Southeast"}
171
+ {:db/id #db/id[:db.part/user -1000620], :neighborhood/name "Rainier Valley"}
172
+ {:community/category ["district council"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000621], :community/name "Southeast District Council", :community/url "http://sedcseattle.wordpress.com/", :community/neighborhood #db/id[:db.part/user -1000620]}
173
+ {:district/region :district.region/e, :db/id #db/id[:db.part/user -1000622], :district/name "Central"}
174
+ {:db/id #db/id[:db.part/user -1000623], :neighborhood/name "Central District", :neighborhood/district #db/id[:db.part/user -1000622]}
175
+ {:community/category ["community group"], :community/orgtype :community.orgtype/community, :community/type :community.type/email-list, :db/id #db/id[:db.part/user -1000624], :community/name "Squire Park Community Council", :community/url "http://groups.yahoo.com/group/squirepark/", :community/neighborhood #db/id[:db.part/user -1000623]}
176
+ {:db/id #db/id[:db.part/user -1000625], :district/name "Central"}
177
+ {:db/id #db/id[:db.part/user -1000626], :neighborhood/name "Central District"}
178
+ {:community/category ["community group"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000627], :community/name "Squire Park Community Council", :community/url "http://www.squireparkseattle.com/", :community/neighborhood #db/id[:db.part/user -1000626]}
179
+ {:db/id #db/id[:db.part/user -1000628], :district/name "Ballard"}
180
+ {:db/id #db/id[:db.part/user -1000629], :neighborhood/name "Ballard"}
181
+ {:community/category ["community group"], :community/orgtype :community.orgtype/community, :community/type :community.type/wiki, :db/id #db/id[:db.part/user -1000630], :community/name "Sustainable Ballard", :community/url "http://sustainableballard.org/wiki/index.php?title=Welcome_to_Sustainable_Ballard!", :community/neighborhood #db/id[:db.part/user -1000629]}
182
+ {:db/id #db/id[:db.part/user -1000631], :district/name "Ballard"}
183
+ {:db/id #db/id[:db.part/user -1000632], :neighborhood/name "Crown Hill", :neighborhood/district #db/id[:db.part/user -1000631]}
184
+ {:community/category ["community group" "has mailing list"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000633], :community/name "Sustainable Crown Hill", :community/url "http://sustainablecrownhill.org/wp/", :community/neighborhood #db/id[:db.part/user -1000632]}
185
+ {:db/id #db/id[:db.part/user -1000634], :district/name "Northwest"}
186
+ {:db/id #db/id[:db.part/user -1000635], :neighborhood/name "Phinney Ridge"}
187
+ {:community/category ["susainability"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000636], :community/name "Sustainable Greenwood/Phinney", :community/url "http://web.me.com/annecann1/iWeb/Site/Home.html", :community/neighborhood #db/id[:db.part/user -1000635]}
188
+ {:db/id #db/id[:db.part/user -1000637], :district/name "Northeast"}
189
+ {:db/id #db/id[:db.part/user -1000638], :neighborhood/name "Wedgwood", :neighborhood/district #db/id[:db.part/user -1000637]}
190
+ {:community/category ["community group"], :community/orgtype :community.orgtype/community, :community/type :community.type/ning, :db/id #db/id[:db.part/user -1000639], :community/name "Sustainable Northeast Seattle", :community/url "http://sustainableneseattle.ning.com/", :community/neighborhood #db/id[:db.part/user -1000638]}
191
+ {:db/id #db/id[:db.part/user -1000640], :district/name "Southwest"}
192
+ {:db/id #db/id[:db.part/user -1000641], :neighborhood/name "Junction", :neighborhood/district #db/id[:db.part/user -1000640]}
193
+ {:community/category ["neighborhood association"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000642], :community/name "The Junction: Downtown West Seattle", :community/url "http://www.wsjunction.com/", :community/neighborhood #db/id[:db.part/user -1000641]}
194
+ {:db/id #db/id[:db.part/user -1000643], :district/name "Northeast"}
195
+ {:db/id #db/id[:db.part/user -1000644], :neighborhood/name "Laurelhurst", :neighborhood/district #db/id[:db.part/user -1000643]}
196
+ {:community/category ["news" "events"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000645], :community/name "The Laurelhurst Blog", :community/url "http://thelaurelhurstblog.blogspot.com/", :community/neighborhood #db/id[:db.part/user -1000644]}
197
+ {:db/id #db/id[:db.part/user -1000646], :district/name "North"}
198
+ {:db/id #db/id[:db.part/user -1000647], :neighborhood/name "Maple Leaf", :neighborhood/district #db/id[:db.part/user -1000646]}
199
+ {:community/category ["news" "events" "human interest" "criminal activity" "shopping"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/twitter, :db/id #db/id[:db.part/user -1000648], :community/name "The Maple Leafer", :community/url "http://twitter.com/themapleleafer", :community/neighborhood #db/id[:db.part/user -1000647]}
200
+ {:db/id #db/id[:db.part/user -1000649], :district/name "North"}
201
+ {:db/id #db/id[:db.part/user -1000650], :neighborhood/name "Maple Leaf"}
202
+ {:community/category ["news" "events" "human interest" "criminal activity" "shopping"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000651], :community/name "The Maple Leafer", :community/url "http://www.facebook.com/pages/The-Maple-Leafer/110782042284727", :community/neighborhood #db/id[:db.part/user -1000650]}
203
+ {:db/id #db/id[:db.part/user -1000652], :district/name "North"}
204
+ {:db/id #db/id[:db.part/user -1000653], :neighborhood/name "Maple Leaf"}
205
+ {:community/category ["news" "events" "human interest" "criminal activity" "shopping"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000654], :community/name "The Maple Leafer", :community/url "http://www.themapleleafer.com/", :community/neighborhood #db/id[:db.part/user -1000653]}
206
+ {:db/id #db/id[:db.part/user -1000655], :district/name "Lake Union"}
207
+ {:db/id #db/id[:db.part/user -1000656], :neighborhood/name "South Lake Union"}
208
+ {:community/category ["news" "events" "personalized profile pages"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000657], :community/name "The South Lake Union Community Blog", :community/url "http://www.thesouthlake.com/", :community/neighborhood #db/id[:db.part/user -1000656]}
209
+ {:db/id #db/id[:db.part/user -1000658], :district/name "Northeast"}
210
+ {:db/id #db/id[:db.part/user -1000659], :neighborhood/name "Thornton Creek", :neighborhood/district #db/id[:db.part/user -1000658]}
211
+ {:community/category ["community group"], :community/type :community.type/website, :db/id #db/id[:db.part/user -1000660], :community/name "Thornton Creek Alliance", :community/url "http://www.scn.org/tca/", :community/neighborhood #db/id[:db.part/user -1000659]}
212
+ {:db/id #db/id[:db.part/user -1000661], :district/name "Northeast"}
213
+ {:db/id #db/id[:db.part/user -1000662], :neighborhood/name "University District", :neighborhood/district #db/id[:db.part/user -1000661]}
214
+ {:community/category ["news" "events" "human interest" "criminal activity" "shopping"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000663], :community/name "U District Daily", :community/url "http://www.udistrictdaily.com/", :community/neighborhood #db/id[:db.part/user -1000662]}
215
+ {:db/id #db/id[:db.part/user -1000664], :district/name "Northeast"}
216
+ {:db/id #db/id[:db.part/user -1000665], :neighborhood/name "University District"}
217
+ {:community/category ["business association"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000666], :community/name "University District Business Improvement Area", :community/url "http://www.udistrictchamber.org/UDBIA/index.html", :community/neighborhood #db/id[:db.part/user -1000665]}
218
+ {:db/id #db/id[:db.part/user -1000667], :district/name "Northeast"}
219
+ {:db/id #db/id[:db.part/user -1000668], :neighborhood/name "University District"}
220
+ {:community/category ["food bank"], :community/orgtype :community.orgtype/community, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000669], :community/name "University District Food Bank", :community/url "http://www.facebook.com/pages/Seattle-WA/University-District-Food-Bank/47523824407", :community/neighborhood #db/id[:db.part/user -1000668]}
221
+ {:db/id #db/id[:db.part/user -1000670], :district/name "Northeast"}
222
+ {:db/id #db/id[:db.part/user -1000671], :neighborhood/name "University District"}
223
+ {:community/category ["food bank"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000672], :community/name "University District Food Bank", :community/url "http://www.udistrictfoodbank.org/", :community/neighborhood #db/id[:db.part/user -1000671]}
224
+ {:db/id #db/id[:db.part/user -1000673], :district/name "Northeast"}
225
+ {:db/id #db/id[:db.part/user -1000674], :neighborhood/name "University District"}
226
+ {:community/category ["chamber of commerce"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000675], :community/name "University District Seattle", :community/url "http://www.udistrictchamber.org/GUCC/GUCC.html", :community/neighborhood #db/id[:db.part/user -1000674]}
227
+ {:db/id #db/id[:db.part/user -1000676], :district/name "Northeast"}
228
+ {:db/id #db/id[:db.part/user -1000677], :neighborhood/name "University District"}
229
+ {:community/category ["nonprofit"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000678], :community/name "University District Service Fund", :community/url "http://www.udistrictchamber.org/udistrictservicefund/index.html", :community/neighborhood #db/id[:db.part/user -1000677]}
230
+ {:db/id #db/id[:db.part/user -1000679], :district/name "Northwest"}
231
+ {:db/id #db/id[:db.part/user -1000680], :neighborhood/name "Greenwood", :neighborhood/district #db/id[:db.part/user -1000679]}
232
+ {:community/category ["park issues" "events" "neighborhood-issues" "neighborhood-planning"], :community/orgtype :community.orgtype/community, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000681], :community/name "Vision Greenwood Park Seattle", :community/url "http://www.facebook.com/pages/Vision-Greenwood-Park-Seattle/165995713450762", :community/neighborhood #db/id[:db.part/user -1000680]}
233
+ {:db/id #db/id[:db.part/user -1000682], :district/name "Ballard"}
234
+ {:db/id #db/id[:db.part/user -1000683], :neighborhood/name "Crown Hill"}
235
+ {:community/category ["neighborhood group"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000684], :community/name "Walkable Crown Hill", :community/url "http://walkablecrownhill.org/", :community/neighborhood #db/id[:db.part/user -1000683]}
236
+ {:db/id #db/id[:db.part/user -1000685], :district/name "Northwest"}
237
+ {:db/id #db/id[:db.part/user -1000686], :neighborhood/name "Wallingford"}
238
+ {:community/category ["chamber of commerce"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000687], :community/name "Wallingford Chamber of Commerce", :community/url "http://wallingfordchamber.org/", :community/neighborhood #db/id[:db.part/user -1000686]}
239
+ {:db/id #db/id[:db.part/user -1000688], :district/name "Northwest"}
240
+ {:db/id #db/id[:db.part/user -1000689], :neighborhood/name "Wallingford"}
241
+ {:community/category ["community council"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000690], :community/name "Wallingford Community Council", :community/url "http://wallingford.org/get-involved/community-council/", :community/neighborhood #db/id[:db.part/user -1000689]}
242
+ {:db/id #db/id[:db.part/user -1000691], :district/name "Northwest"}
243
+ {:db/id #db/id[:db.part/user -1000692], :neighborhood/name "Wallingford"}
244
+ {:community/category ["news" "events" "advice"], :community/orgtype :community.orgtype/community, :community/type :community.type/twitter, :db/id #db/id[:db.part/user -1000693], :community/name "Wallingford Seattle Blog", :community/url "http://twitter.com/wallingford", :community/neighborhood #db/id[:db.part/user -1000692]}
245
+ {:db/id #db/id[:db.part/user -1000694], :district/name "Northwest"}
246
+ {:db/id #db/id[:db.part/user -1000695], :neighborhood/name "Wallingford"}
247
+ {:community/category ["news" "events" "advice"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000696], :community/name "Wallingford Seattle Blog", :community/url "http://wallingfordseattle.tumblr.com/", :community/neighborhood #db/id[:db.part/user -1000695]}
248
+ {:db/id #db/id[:db.part/user -1000697], :district/name "Northwest"}
249
+ {:db/id #db/id[:db.part/user -1000698], :neighborhood/name "Wallingford"}
250
+ {:community/category ["neighborhood group"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000699], :community/name "Wallingford.org", :community/url "http://www.wallingford.org/", :community/neighborhood #db/id[:db.part/user -1000698]}
251
+ {:db/id #db/id[:db.part/user -1000700], :district/name "Northwest"}
252
+ {:db/id #db/id[:db.part/user -1000701], :neighborhood/name "Wallingford"}
253
+ {:community/category ["news" "events"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/twitter, :db/id #db/id[:db.part/user -1000702], :community/name "Wallyhood - Wallingford Seattle Blog", :community/url "http://twitter.com/wallyhood", :community/neighborhood #db/id[:db.part/user -1000701]}
254
+ {:db/id #db/id[:db.part/user -1000703], :district/name "Northwest"}
255
+ {:db/id #db/id[:db.part/user -1000704], :neighborhood/name "Wallingford"}
256
+ {:community/category ["news" "events"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000705], :community/name "Wallyhood - Wallingford Seattle Blog", :community/url "http://www.wallyhood.org/", :community/neighborhood #db/id[:db.part/user -1000704]}
257
+ {:db/id #db/id[:db.part/user -1000706], :district/name "Northeast"}
258
+ {:db/id #db/id[:db.part/user -1000707], :neighborhood/name "Wedgwood"}
259
+ {:community/category ["block watch"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000708], :community/name "Wedgwood Block Watch", :community/url "http://www.wedgwoodcc.org/wwbw/", :community/neighborhood #db/id[:db.part/user -1000707]}
260
+ {:db/id #db/id[:db.part/user -1000709], :district/name "Northeast"}
261
+ {:db/id #db/id[:db.part/user -1000710], :neighborhood/name "Wedgwood"}
262
+ {:community/category ["community council"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000711], :community/name "Wedgwood Community Council", :community/url "http://www.wedgwoodcc.org/", :community/neighborhood #db/id[:db.part/user -1000710]}
263
+ {:db/id #db/id[:db.part/user -1000712], :district/name "Northeast"}
264
+ {:db/id #db/id[:db.part/user -1000713], :neighborhood/name "Wedgwood"}
265
+ {:community/category ["community council"], :community/orgtype :community.orgtype/community, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000714], :community/name "Wedgwood Community Council", :community/url "http://www.facebook.com/pages/Wedgwood-Community-Council/146730522040662", :community/neighborhood #db/id[:db.part/user -1000713]}
266
+ {:db/id #db/id[:db.part/user -1000715], :district/name "Northeast"}
267
+ {:db/id #db/id[:db.part/user -1000716], :neighborhood/name "Wedgwood"}
268
+ {:community/category ["news" "events" "human interest" "criminal activity" "shopping"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/twitter, :db/id #db/id[:db.part/user -1000717], :community/name "Wedgwood View", :community/url "http://twitter.com/wedgwoodview", :community/neighborhood #db/id[:db.part/user -1000716]}
269
+ {:db/id #db/id[:db.part/user -1000718], :district/name "Northeast"}
270
+ {:db/id #db/id[:db.part/user -1000719], :neighborhood/name "Wedgwood"}
271
+ {:community/category ["news" "events" "human interest" "criminal activity" "shopping"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000720], :community/name "Wedgwood View", :community/url "http://www.facebook.com/pages/Wedgwood-View/331236446338", :community/neighborhood #db/id[:db.part/user -1000719]}
272
+ {:db/id #db/id[:db.part/user -1000721], :district/name "Northeast"}
273
+ {:db/id #db/id[:db.part/user -1000722], :neighborhood/name "Wedgwood"}
274
+ {:community/category ["news" "events" "human interest" "criminal activity" "shopping"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000723], :community/name "Wedgwood View", :community/url "http://www.wedgwoodview.com/", :community/neighborhood #db/id[:db.part/user -1000722]}
275
+ {:db/id #db/id[:db.part/user -1000724], :district/name "Southwest"}
276
+ {:db/id #db/id[:db.part/user -1000725], :neighborhood/name "West Seattle"}
277
+ {:community/category ["profile page for West Seattle Blog"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000726], :community/name "West Seattle Blog", :community/url "http://www.facebook.com/westseattleblog", :community/neighborhood #db/id[:db.part/user -1000725]}
278
+ {:db/id #db/id[:db.part/user -1000727], :district/name "Southwest"}
279
+ {:db/id #db/id[:db.part/user -1000728], :neighborhood/name "West Seattle"}
280
+ {:community/category ["chamber of commerce"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000729], :community/name "West Seattle Chamber of Commerce", :community/url "http://www.wschamber.com/", :community/neighborhood #db/id[:db.part/user -1000728]}
281
+ {:db/id #db/id[:db.part/user -1000730], :district/name "Southwest"}
282
+ {:db/id #db/id[:db.part/user -1000731], :neighborhood/name "West Seattle"}
283
+ {:community/category ["online newspaper"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/twitter, :db/id #db/id[:db.part/user -1000732], :community/name "West Seattle Herald", :community/url "http://twitter.com/westseattleher", :community/neighborhood #db/id[:db.part/user -1000731]}
284
+ {:db/id #db/id[:db.part/user -1000733], :district/name "Southwest"}
285
+ {:db/id #db/id[:db.part/user -1000734], :neighborhood/name "West Seattle"}
286
+ {:community/category ["online newspaper"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/facebook-page, :db/id #db/id[:db.part/user -1000735], :community/name "West Seattle Herald", :community/url "http://www.facebook.com/wsherald", :community/neighborhood #db/id[:db.part/user -1000734]}
287
+ {:db/id #db/id[:db.part/user -1000736], :district/name "Southwest"}
288
+ {:db/id #db/id[:db.part/user -1000737], :neighborhood/name "West Seattle"}
289
+ {:community/category ["online newspaper"], :community/orgtype :community.orgtype/commercial, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000738], :community/name "West Seattle Herald", :community/url "http://www.westseattleherald.com/", :community/neighborhood #db/id[:db.part/user -1000737]}
290
+ {:db/id #db/id[:db.part/user -1000739], :district/name "Delridge"}
291
+ {:db/id #db/id[:db.part/user -1000740], :neighborhood/name "Westwood", :neighborhood/district #db/id[:db.part/user -1000739]}
292
+ {:community/category ["neighborhood council"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000741], :community/name "Westwood Neighborhood Council", :community/url "http://www.scn.org/neighbors/westwood/", :community/neighborhood #db/id[:db.part/user -1000740]}
293
+ {:db/id #db/id[:db.part/user -1000742], :district/name "Delridge"}
294
+ {:db/id #db/id[:db.part/user -1000743], :neighborhood/name "White Center", :neighborhood/district #db/id[:db.part/user -1000742]}
295
+ {:community/category ["nonprofit"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000744], :community/name "White Center Community Development Association", :community/url "http://www.wccda.org/home", :community/neighborhood #db/id[:db.part/user -1000743]}
296
+ {:db/id #db/id[:db.part/user -1000745], :district/name "Delridge"}
297
+ {:db/id #db/id[:db.part/user -1000746], :neighborhood/name "White Center"}
298
+ {:community/category ["nonprofit"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000747], :community/name "White Center Community Development Association blog", :community/url "http://twitter.com/whitecentercda", :community/neighborhood #db/id[:db.part/user -1000746]}
299
+ {:db/id #db/id[:db.part/user -1000748], :district/name "Delridge"}
300
+ {:db/id #db/id[:db.part/user -1000749], :neighborhood/name "White Center"}
301
+ {:community/category ["news" "events" "food"], :community/orgtype :community.orgtype/community, :community/type :community.type/blog, :db/id #db/id[:db.part/user -1000750], :community/name "White Center Now", :community/url "http://whitecenternow.com/", :community/neighborhood #db/id[:db.part/user -1000749]}
302
+ {:db/id #db/id[:db.part/user -1000751], :district/name "Southwest"}
303
+ {:db/id #db/id[:db.part/user -1000752], :neighborhood/name "White Center"}
304
+ {:community/category ["tech resources"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000753], :community/name "White Center Technology Programs", :community/url "http://technology.program.googlepages.com/", :community/neighborhood #db/id[:db.part/user -1000752]}
305
+ {:db/id #db/id[:db.part/user -1000754], :district/name "Downtown"}
306
+ {:db/id #db/id[:db.part/user -1000755], :neighborhood/name "International District"}
307
+ {:community/category ["museum"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000756], :community/name "Wing Luke Asian Museum", :community/url "http://www.wingluke.org/", :community/neighborhood #db/id[:db.part/user -1000755]}
308
+ {:db/id #db/id[:db.part/user -1000757], :district/name "Delridge"}
309
+ {:db/id #db/id[:db.part/user -1000758], :neighborhood/name "Delridge"}
310
+ {:community/category ["arts"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000759], :community/name "Youngstown Cultural Arts Center", :community/url "http://youngstownarts.org", :community/neighborhood #db/id[:db.part/user -1000758]}
311
+ {:db/id #db/id[:db.part/user -1000760], :district/name "East"}
312
+ {:db/id #db/id[:db.part/user -1000761], :neighborhood/name "Capitol Hill"}
313
+ {:community/category ["dining" "events" "nightlife" "shopping"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000762], :community/name "Your Capitol Hill", :community/url "http://www.yourcapitolhill.com/", :community/neighborhood #db/id[:db.part/user -1000761]}
314
+ {:db/id #db/id[:db.part/user -1000763], :district/name "Greater Duwamish"}
315
+ {:db/id #db/id[:db.part/user -1000764], :neighborhood/name "South Park"}
316
+ {:community/category ["community members"], :community/orgtype :community.orgtype/community, :community/type :community.type/email-list, :db/id #db/id[:db.part/user -1000765], :community/name "yoursouthpark", :community/url "http://groups.yahoo.com/group/yoursouthpark/", :community/neighborhood #db/id[:db.part/user -1000764]}
317
+ {:db/id #db/id[:db.part/user -1000766], :district/name "Downtown"}
318
+ {:db/id #db/id[:db.part/user -1000767], :neighborhood/name "International District"}
319
+ {:community/category ["ethnic/cultural-interest" "seniors" "youth"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000768], :community/name "Helping Link", :community/url "http://www.helpinglink.org/", :community/neighborhood #db/id[:db.part/user -1000767]}
320
+ {:db/id #db/id[:db.part/user -1000769], :district/name "East"}
321
+ {:db/id #db/id[:db.part/user -1000770], :neighborhood/name "Madison Park", :neighborhood/district #db/id[:db.part/user -1000769]}
322
+ {:community/category ["community group"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000771], :community/name "MLK FAME Community Center", :community/url "http://www.mlkfame.com/", :community/neighborhood #db/id[:db.part/user -1000770]}
323
+ {:db/id #db/id[:db.part/user -1000772], :district/name "Southeast"}
324
+ {:db/id #db/id[:db.part/user -1000773], :neighborhood/name "Jackson Place", :neighborhood/district #db/id[:db.part/user -1000772]}
325
+ {:community/category ["neighborhood-issues" "neighborhood-planning"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000774], :community/name "Jackson Place Community Council", :community/url "http://www.jacksonplace.org", :community/neighborhood #db/id[:db.part/user -1000773]}
326
+ ]
@@ -0,0 +1,39 @@
1
+ require 'conf_helper'
2
+
3
+ class Developer
4
+ include Diametric::Entity
5
+ include Diametric::Persistence::Peer
6
+
7
+ attribute :name, String
8
+ attribute :friends, Ref, :cardinality => :many
9
+ end
10
+
11
+ describe "RailsConf 2013", :jruby => true do
12
+ context Developer do
13
+ before(:all) do
14
+ datomic_uri = "datomic:mem://developer-#{SecureRandom.uuid}"
15
+ @conn = Diametric::Persistence::Peer.connect(datomic_uri)
16
+ end
17
+ after(:all) do
18
+ @conn.release
19
+ end
20
+
21
+ it "should create schema and save instaces" do
22
+ binding.pry
23
+ Developer.create_schema(@conn)
24
+
25
+ yoko = Developer.new
26
+ yoko.name = "Yoko Harada"
27
+ yoko.save
28
+ binding.pry
29
+
30
+ clinton = Developer.new(:name => "Clinton N. Dreisbach", :friends => [yoko])
31
+ clinton.save
32
+ binding.pry
33
+
34
+ ryan = Developer.new(:name => "Ryan Neufeld", :friends => [clinton, yoko])
35
+ ryan.save
36
+ binding.pry
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,120 @@
1
+ require 'spec_helper'
2
+
3
+ class Developer
4
+ include Diametric::Entity
5
+ include Diametric::Persistence::Peer
6
+
7
+ attribute :name, String
8
+ attribute :nerd_rate, Integer
9
+ attribute :friends, Ref, :cardinality => :many
10
+ end
11
+
12
+ describe Developer, :jruby => true do
13
+ before do
14
+ datomic_uri = "datomic:mem://developer-#{SecureRandom.uuid}"
15
+ @conn = Diametric::Persistence::Peer.connect(datomic_uri)
16
+ Developer.create_schema(@conn)
17
+ end
18
+ after do
19
+ @conn.release
20
+ end
21
+
22
+ it "should save an instace and get it" do
23
+ yoko = Developer.new
24
+ yoko.name = "Yoko Harada"
25
+ yoko.save(@conn)
26
+ query = Diametric::Query.new(Developer, @conn, true)
27
+ result = query.all
28
+ result.size.should == 1
29
+ result.first.name.should == "Yoko Harada"
30
+ end
31
+
32
+ it "should make query with the argument" do
33
+ yoko = Developer.new
34
+ yoko.name = "Yoko Harada"
35
+ yoko.nerd_rate = 50
36
+ yoko.save(@conn)
37
+ query = Diametric::Query.new(Developer, @conn, true).where(:name => "Yoko Harada")
38
+ query_data = "[:find ?e :in $ [?name] :where [?e :developer/name ?name]]"
39
+ query.data.first.gsub(" ", "").should == query_data.gsub(" ", "")
40
+ result = query.all
41
+ result.size.should == 1
42
+ result.first.nerd_rate.should == 50
43
+ end
44
+
45
+ it "should not resolve referenced object" do
46
+ yoko = Developer.new
47
+ yoko.name = "Yoko Harada"
48
+ yoko.nerd_rate = 50
49
+ yoko.save(@conn)
50
+ clinton = Developer.new(:name => "Clinton N. Dreisbach", :friends => [yoko])
51
+ clinton.nerd_rate = 98
52
+ clinton.save(@conn)
53
+
54
+ query = Diametric::Query.new(Developer, @conn).where(:name => "Clinton N. Dreisbach")
55
+ result = query.all
56
+ result.size.should == 1
57
+
58
+ developer = Developer.from_dbid_or_entity(result.first, @conn.db, false)
59
+ friends = developer.friends
60
+ friends.each do |f|
61
+ f.should be_a(Java::DatomicQuery::EntityMap)
62
+ end
63
+ end
64
+
65
+ it "should find three developers" do
66
+ yoko = Developer.new
67
+ yoko.name = "Yoko Harada"
68
+ yoko.nerd_rate = 50
69
+ yoko.save(@conn)
70
+ clinton = Developer.new(:name => "Clinton N. Dreisbach", :friends => [yoko])
71
+ clinton.nerd_rate = 98
72
+ clinton.save(@conn)
73
+ ryan = Developer.new(:name => "Ryan Neufeld", :friends => [clinton, yoko])
74
+ ryan.nerd_rate = 80
75
+ ryan.save(@conn)
76
+
77
+ query = Diametric::Query.new(Developer, @conn)
78
+ result = query.all
79
+ result.size.should == 3
80
+ resolved_result = result.map {|m| Developer.from_dbid_or_entity(m, @conn)}
81
+ resolved_result.collect(&:nerd_rate).should =~ [50, 98, 80]
82
+ end
83
+
84
+ it "should filter out developers" do
85
+ yoko = Developer.new
86
+ yoko.name = "Yoko Harada"
87
+ yoko.nerd_rate = 50
88
+ yoko.save(@conn)
89
+ clinton = Developer.new(:name => "Clinton N. Dreisbach", :friends => [yoko])
90
+ clinton.nerd_rate = 98
91
+ clinton.save(@conn)
92
+ ryan = Developer.new(:name => "Ryan Neufeld", :friends => [clinton, yoko])
93
+ ryan.nerd_rate = 80
94
+ ryan.save(@conn)
95
+
96
+ query = Diametric::Query.new(Developer, @conn).filter(:>, :nerd_rate, 70)
97
+ query_data = "[:find ?e :in $ :where [?e :developer/nerd_rate ?nerd_rate] [(> ?nerd_rate 70)]]"
98
+ query.data.first.gsub(" ", "").should == query_data.gsub(" ", "")
99
+ result = query.all
100
+ result.size.should == 2
101
+ end
102
+
103
+ it "should resolve referenced objects" do
104
+ yoko = Developer.new
105
+ yoko.name = "Yoko Harada"
106
+ yoko.nerd_rate = 50
107
+ yoko.save(@conn)
108
+ clinton = Developer.new(:name => "Clinton N. Dreisbach", :friends => [yoko])
109
+ clinton.nerd_rate = 98
110
+ clinton.save(@conn)
111
+ ryan = Developer.new(:name => "Ryan Neufeld", :friends => [clinton, yoko])
112
+ ryan.nerd_rate = 80
113
+ ryan.save(@conn)
114
+
115
+ query = Diametric::Query.new(Developer, @conn, true).where(:name => "Ryan Neufeld")
116
+ result = query.all
117
+ result.size.should == 1
118
+ result.first.friends.collect(&:name).should =~ ["Yoko Harada", "Clinton N. Dreisbach"]
119
+ end
120
+ end