<!DOCTYPE html>
<html>
  <head>
  </head>
  <body>
    <dl style="line-height: 1.5; margin-left: 2em">
      <dt style="clear: both; float: left; font-weight: bold; width: 8em">Author</dt>
      <dd style="margin-left: 8.5em">YUKI Hiroshi &lt;shimo****@clear*****&gt;</dd>
      <dt style="clear: both; float: left; font-weight: bold; width: 8em">Date</dt>
      <dd style="margin-left: 8.5em">2015-01-15 14:32:49 +0900 (Thu, 15 Jan 2015)</dd>
      <dt style="clear: both; float: left; font-weight: bold; width: 8em">New Revision</dt>
      <dd style="margin-left: 8.5em"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2">bfc34e4698c28f1fdd557a9c5bd64d57152a32a2</a></dd>
      <dt style="clear: both; float: left; font-weight: bold; width: 8em">Message</dt>
      <dd style="margin-left: 8.5em"><pre style="border: 1px solid #aaa; font-family: Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace; line-height: 1.2; padding: 0.5em; width: auto">Validate message before sent</pre></dd>
      <dt style="clear: both; float: left; font-weight: bold; width: 8em">Added files</dt>
      <dd style="margin-left: 8.5em">
        <ul>
          <li><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#diff-1">lib/droonga/client/message_validator.rb</a></li>
        </ul>
      </dd>
      <dt style="clear: both; float: left; font-weight: bold; width: 8em">Modified files</dt>
      <dd style="margin-left: 8.5em">
        <ul>
          <li><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#diff-0">bin/droonga-request</a></li>
        </ul>
      </dd>
    </dl>

    <div class="diff-section" style="clear: both">
      <table style="border-collapse: collapse; border: 1px solid #aaa">
        <thead>
          <tr class="diff-header" style="border: 1px solid #aaa">
            <td colspan="3">
<pre style="border: 0; font-family: Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-header" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">  Modified: bin/droonga-request (+2 -0)</span>
<span class="diff-header-mark" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">===================================================================</span>
</pre>
            </td>
          </tr>
        </thead>
        <tbody>
          <tr>
            <th class="diff-line-number" style="border: 1px solid #aaa">
<pre style="border: 0; font-family: Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L100">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L101">101</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L102">102</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L103">103</a></span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L104">104</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L105">105</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L106">106</a></span>
<span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L115">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L116">116</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L117">117</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L118">118</a></span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L119">119</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L120">120</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0L121">121</a></span>
</pre>
            </th>
            <th class="diff-line-number" style="border: 1px solid #aaa">
<pre style="border: 0; font-family: Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R100">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R101">101</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R102">102</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R103">103</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R104">104</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R105">105</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R106">106</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R107">107</a></span>
<span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R116">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R117">117</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R118">118</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R119">119</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R120">120</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R121">121</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R122">122</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L0R123">123</a></span>
</pre>
            </th>
            <td class="diff-content" style="border: 1px solid #aaa">
<pre style="border: 0; font-family: Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-hunk-header" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">@@ -101,6 +101,7 @@ <span class="diff-context" style="background-color: #ffffaa; color: #000000">end</span></span>
<span class="diff-not-changed" style="display: block; white-space: pre"> request_json_files = parser.parse!(ARGV)</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> </span>
<span class="diff-not-changed" style="display: block; white-space: pre"> perfector = Droonga::Client::MessagePerfector.new</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+validator = Droonga::Client::MessageValidator.new</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> </span>
<span class="diff-not-changed" style="display: block; white-space: pre"> client = Droonga::Client.new(options)</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> json_parser = Yajl::Parser.new</span>
<span class="diff-hunk-header" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">@@ -116,6 +117,7 @@ <span class="diff-context" style="background-color: #ffffaa; color: #000000">json_parser.on_parse_complete = lambda do |request_message|</span></span>
<span class="diff-not-changed" style="display: block; white-space: pre">     print(message)</span>
<span class="diff-not-changed" style="display: block; white-space: pre">   end</span>
<span class="diff-not-changed" style="display: block; white-space: pre">   request_message = perfector.perfect(request_message)</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+  validator.validate(request_message)</span>
<span class="diff-not-changed" style="display: block; white-space: pre">   start = Time.now</span>
<span class="diff-not-changed" style="display: block; white-space: pre">   request = client.request(request_message) do |response|</span>
<span class="diff-not-changed" style="display: block; white-space: pre">     message = &quot;&quot;</span>
</pre>
            </td>
          </tr>
        </tbody>
      </table>
      <table style="border-collapse: collapse; border: 1px solid #aaa">
        <thead>
          <tr class="diff-header" style="border: 1px solid #aaa">
            <td colspan="3">
<pre style="border: 0; font-family: Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-header" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">  Added: lib/droonga/client/message_validator.rb (+62 -0) 100644</span>
<span class="diff-header-mark" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">===================================================================</span>
</pre>
            </td>
          </tr>
        </thead>
        <tbody>
          <tr>
            <th class="diff-line-number" style="border: 1px solid #aaa">
<pre style="border: 0; font-family: Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1L-1">...</a></span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre">&nbsp;</span>
</pre>
            </th>
            <th class="diff-line-number" style="border: 1px solid #aaa">
<pre style="border: 0; font-family: Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R0">...</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R1">1</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R2">2</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R3">3</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R4">4</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R5">5</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R6">6</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R7">7</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R8">8</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R9">9</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R10">10</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R11">11</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R12">12</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R13">13</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R14">14</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R15">15</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R16">16</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R17">17</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R18">18</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R19">19</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R20">20</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R21">21</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R22">22</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R23">23</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R24">24</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R25">25</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R26">26</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R27">27</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R28">28</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R29">29</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R30">30</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R31">31</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R32">32</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R33">33</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R34">34</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R35">35</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R36">36</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R37">37</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R38">38</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R39">39</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R40">40</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R41">41</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R42">42</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R43">43</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R44">44</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R45">45</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R46">46</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R47">47</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R48">48</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R49">49</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R50">50</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R51">51</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R52">52</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R53">53</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R54">54</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R55">55</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R56">56</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R57">57</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R58">58</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R59">59</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R60">60</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R61">61</a></span>
<span class="diff-line-number-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre"><a href="https://github.com/droonga/droonga-client-ruby/commit/bfc34e4698c28f1fdd557a9c5bd64d57152a32a2#L1R62">62</a></span>
</pre>
            </th>
            <td class="diff-content" style="border: 1px solid #aaa">
<pre style="border: 0; font-family: Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-hunk-header" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">@@ -0,0 +1,62 @@</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# -*- coding: utf-8 -*-</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+#</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# Copyright (C) 2015 Droonga Project</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+#</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# This library is free software; you can redistribute it and/or</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# modify it under the terms of the GNU Lesser General Public</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# License version 2.1 as published by the Free Software Foundation.</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+#</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# This library is distributed in the hope that it will be useful,</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# Lesser General Public License for more details.</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+#</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# You should have received a copy of the GNU Lesser General Public</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# License along with this library; if not, write to the Free Software</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+require &quot;time&quot;</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+module Droonga</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+  class Client</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+    class MessageValidator</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      class MissingId &lt; ArgumentError</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      class MissingDataset &lt; ArgumentError</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      class InvalidDate &lt; ArgumentError</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      def initialize(options={})</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+        @options = options</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      def validate(message)</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+        validate_id(message)</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+        validate_dataset(message)</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+        validate_date(message)</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      private</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      def validate_id(message)</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+        unless message[&quot;id&quot;]</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+          raise MissingId.new(message[&quot;id&quot;])</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+        end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      def validate_dataset(message)</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+        unless message[&quot;dataset&quot;]</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+          raise MissingDataset.new(message[&quot;dataset&quot;])</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+        end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      def validate_date(message)</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+        Time.parse(message[&quot;date&quot;])</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      rescue ArgumentError =&gt; error</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+        raise InvalidDate.new(message[&quot;date&quot;])</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+      end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+    end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+  end</span>
<span class="diff-added" style="background-color: #aaffaa; color: #000000; display: block; white-space: pre">+end</span>
</pre>
            </td>
          </tr>
        </tbody>
      </table>
    </div>
  </body>
</html>