diametric 0.1.1-java

Sign up to get free protection for your applications and to get access to all the features.
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