<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -10,5 +10,6 @@
   ]},
   {registered, []},
   {mod, {erlurl_app, []}},
-  {env, []},
+  {env, [{&quot;host&quot;, &quot;localhost&quot;},
+         {&quot;doc_root&quot;, &quot;.&quot;}]},
   {applications, [kernel, stdlib, crypto]}]}.</diff>
      <filename>erlurl/src/erlurl.app</filename>
    </modified>
    <modified>
      <diff>@@ -5,9 +5,13 @@
 
 -include_lib(&quot;webmachine/include/webmachine.hrl&quot;).
 
+-record(state,
+        {docroot,
+         mimetype,
+         data=&quot;&quot;}).
 
-init(_) -&gt;
-  {ok, []}.
+init(DocRoot) -&gt;
+  {ok, #state{docroot=DocRoot}}.
 
 resource_exists(ReqProps, Context) -&gt;
   Path = ?PATH(ReqProps),
@@ -15,8 +19,8 @@ resource_exists(ReqProps, Context) -&gt;
   case find_file(Req:get_app_root(), Path) of
     {error, enoent} -&gt;
       {false, Context};
-    Contents -&gt;
-      {true, Contents}
+    {MimeType, Contents} -&gt;
+      {true, Context#state{data=Contents, mimetype=MimeType}}
   end.
 
 content_types_provided(_ReqProps, Context) -&gt;
@@ -27,14 +31,14 @@ content_types_provided(_ReqProps, Context) -&gt;
 allowed_methods(_ReqProps, Context) -&gt;
   {['GET'], Context}.
 
-generate_etag(_ReqProps, {MimeType, Contents}) -&gt;
-  Checksum = erlang:md5(Contents),
-  {hexify(binary_to_list(Checksum)), {MimeType, Contents}}.
+generate_etag(_ReqProps, Context) -&gt;
+  Checksum = erlang:md5(Context#state.data),
+  {hexify(binary_to_list(Checksum)), Context}.
 
-provide_file(ReqProps, {MimeType, Contents}) -&gt;
+provide_file(ReqProps, Context) -&gt;
   Req = ?REQ(ReqProps),
-  Req:add_response_header(&quot;Content-Type&quot;, MimeType),
-  {Contents, []}.
+  Req:add_response_header(&quot;Content-Type&quot;, Context#state.mimetype),
+  {Context#state.data, []}.
 
 %% Internal functions
 find_file(AppRoot, Path) -&gt;</diff>
      <filename>erlurl/src/erlurl_root_resource.erl</filename>
    </modified>
    <modified>
      <diff>@@ -17,43 +17,45 @@
 %% @spec start_link() -&gt; ServerRet
 %% @doc API for starting the supervisor.
 start_link() -&gt;
-    supervisor:start_link({local, ?MODULE}, ?MODULE, []).
+  supervisor:start_link({local, ?MODULE}, ?MODULE, []).
 
 %% @spec upgrade() -&gt; ok
 %% @doc Add processes if necessary.
 upgrade() -&gt;
-    {ok, {_, Specs}} = init([]),
+  {ok, {_, Specs}} = init([]),
 
-    Old = sets:from_list(
-	    [Name || {Name, _, _, _} &lt;- supervisor:which_children(?MODULE)]),
-    New = sets:from_list([Name || {Name, _, _, _, _, _} &lt;- Specs]),
-    Kill = sets:subtract(Old, New),
+  Old = sets:from_list(
+          [Name || {Name, _, _, _} &lt;- supervisor:which_children(?MODULE)]),
+  New = sets:from_list([Name || {Name, _, _, _, _, _} &lt;- Specs]),
+  Kill = sets:subtract(Old, New),
 
-    sets:fold(fun (Id, ok) -&gt;
-		      supervisor:terminate_child(?MODULE, Id),
-		      supervisor:delete_child(?MODULE, Id),
-		      ok
-	      end, ok, Kill),
+  sets:fold(fun (Id, ok) -&gt;
+                supervisor:terminate_child(?MODULE, Id),
+                supervisor:delete_child(?MODULE, Id),
+                ok
+            end, ok, Kill),
 
-    [supervisor:start_child(?MODULE, Spec) || Spec &lt;- Specs],
-    ok.
+  [supervisor:start_child(?MODULE, Spec) || Spec &lt;- Specs],
+  ok.
 
 %% @spec init([]) -&gt; SupervisorTree
 %% @doc supervisor callback.
 init([]) -&gt;
-    Ip = case os:getenv(&quot;WEBMACHINE_IP&quot;) of false -&gt; &quot;0.0.0.0&quot;; Any -&gt; Any end,
-    Dispatch = [{[&quot;s&quot;, '*'], erlurl_resource, [&quot;http://localhost:8000&quot;]},
-                {['*'], erlurl_root_resource, []}],
-    WebConfig = [
-		 {ip, Ip},
-		 {port, 8000},
-                 {log_dir, &quot;priv/log&quot;},
-		 {dispatch, Dispatch}],
-    Web = {webmachine_mochiweb,
-	   {webmachine_mochiweb, start, [WebConfig]},
-	   permanent, 5000, worker, dynamic},
-    Store = {erlurl_store,
+  Ip = case os:getenv(&quot;WEBMACHINE_IP&quot;) of false -&gt; &quot;0.0.0.0&quot;; Any -&gt; Any end,
+  Host = application:get_env(&quot;host&quot;),
+  DocRoot = application:get_env(&quot;doc_root&quot;),
+  Dispatch = [{[&quot;s&quot;, '*'], erlurl_resource, [Host]},
+              {['*'], erlurl_root_resource, [DocRoot]}],
+  WebConfig = [
+               {ip, Ip},
+               {port, 8000},
+               {log_dir, &quot;priv/log&quot;},
+               {dispatch, Dispatch}],
+  Web = {webmachine_mochiweb,
+         {webmachine_mochiweb, start, [WebConfig]},
+         permanent, 5000, worker, dynamic},
+  Store = {erlurl_store,
 	   {erlurl_store, start_link, []},
 	   permanent, 5000, worker, dynamic},
-    Processes = [Store, Web],
-    {ok, {{one_for_one, 10, 10}, Processes}}.
+  Processes = [Store, Web],
+  {ok, {{one_for_one, 10, 10}, Processes}}.</diff>
      <filename>erlurl/src/erlurl_sup.erl</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>herml/.gitignore</filename>
    </removed>
    <removed>
      <filename>herml/Makefile</filename>
    </removed>
    <removed>
      <filename>herml/ebin/.gitignore</filename>
    </removed>
    <removed>
      <filename>herml/ebin_tests/.gitignore</filename>
    </removed>
    <removed>
      <filename>herml/src/Emakefile</filename>
    </removed>
    <removed>
      <filename>herml/src/herml_html_render.erl</filename>
    </removed>
    <removed>
      <filename>herml/src/herml_reader.erl</filename>
    </removed>
    <removed>
      <filename>herml/src/herml_tags.erl</filename>
    </removed>
    <removed>
      <filename>herml/src/herml_tree_consolidator.erl</filename>
    </removed>
    <removed>
      <filename>herml/tests/Emakefile</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/bad_indent.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/bad_list1.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/basic_html.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/consolidate_nested_peers.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/consolidate_peers.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/div_snippet.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/div_snippet1.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/div_snippet2.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/div_snippet3.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/gentag_snippet1.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/simple_file.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/examples/simple_nesting.herml</filename>
    </removed>
    <removed>
      <filename>herml/tests/test_herml_reader.erl</filename>
    </removed>
    <removed>
      <filename>herml/tests/test_suite.erl</filename>
    </removed>
    <removed>
      <filename>twoply/Emakefile</filename>
    </removed>
    <removed>
      <filename>twoply/Makefile</filename>
    </removed>
    <removed>
      <filename>twoply/src/twoply.hrl</filename>
    </removed>
    <removed>
      <filename>twoply/src/twoply_http_dispatcher.erl</filename>
    </removed>
    <removed>
      <filename>twoply/src/twoply_supervisor.erl</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>86711409fbc0452f22a264fb527f69f31046dd33</id>
    </parent>
  </parents>
  <author>
    <name>kevsmith</name>
    <email>kevin@hypotheticalabs.com</email>
  </author>
  <url>http://github.com/kevsmith/hypotheticalabs/commit/ccde98ff57c928d50c8f6609562aa8458d6136e0</url>
  <id>ccde98ff57c928d50c8f6609562aa8458d6136e0</id>
  <committed-date>2009-03-21T09:03:35-07:00</committed-date>
  <authored-date>2009-03-21T09:03:35-07:00</authored-date>
  <message>* Removing dead projects</message>
  <tree>6d703d980b30d796f1d5fd18fe593fd7a74b2f36</tree>
  <committer>
    <name>kevsmith</name>
    <email>kevin@hypotheticalabs.com</email>
  </committer>
</commit>
