<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: custom adapter called more than the frequency set in ArcGIS GeoEvent Server Questions</title>
    <link>https://community.esri.com/t5/arcgis-geoevent-server-questions/custom-adapter-called-more-than-the-frequency-set/m-p/624479#M2746</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;A bit late with a response but might still be of help.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You might check the logs to see if there is an indication of the input transport running more frequently than the 360 seconds that you specified.&amp;nbsp; That is assuming you don't have direct access to the transport code to debug.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If that checks out fine then I've got another idea.&amp;nbsp; The inbound adapter sample as packaged uses the bulk ByteBuffer.get method but with a limitation of 10 bytes on the byte array that it is going to copy bytes to.&amp;nbsp; If your incoming ByteBuffer data is larger than that 10 bytes, the bulk get method will only move the read position in the buffer that 10 bytes.&amp;nbsp; Adapt will continue to get called until the entire buffer is consumed, up to the buffer limit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So you could do either of the following:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Make the byte array larger to a hard coded size (100, 1024, etc)&lt;UL&gt;&lt;LI&gt;&lt;P&gt;byte[] data = new byte[1024];&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;buffer.get(data);&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;Create the byte array to be as large as the incoming buffer data size&lt;UL&gt;&lt;LI&gt;&lt;P&gt;byte[] data= new byte[buffer.remaining()];&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;buffer.get(data);&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;There is a maximum size limitation on the incoming buffer, I think it is 20 MB or around there.&amp;nbsp; Might be larger in later versions (greater than 10.2.2).&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 31 Oct 2014 21:55:52 GMT</pubDate>
    <dc:creator>JacobHays</dc:creator>
    <dc:date>2014-10-31T21:55:52Z</dc:date>
    <item>
      <title>custom adapter called more than the frequency set</title>
      <link>https://community.esri.com/t5/arcgis-geoevent-server-questions/custom-adapter-called-more-than-the-frequency-set/m-p/624478#M2745</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I installed the sample adapter and set debug point of adapt method, I configured an input that uses this adapter. I set the frequency to be 360 seconds, but the adapter is called like every second. Is this normal behavior?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Sep 2014 03:55:21 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-geoevent-server-questions/custom-adapter-called-more-than-the-frequency-set/m-p/624478#M2745</guid>
      <dc:creator>BillHan</dc:creator>
      <dc:date>2014-09-16T03:55:21Z</dc:date>
    </item>
    <item>
      <title>Re: custom adapter called more than the frequency set</title>
      <link>https://community.esri.com/t5/arcgis-geoevent-server-questions/custom-adapter-called-more-than-the-frequency-set/m-p/624479#M2746</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;A bit late with a response but might still be of help.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You might check the logs to see if there is an indication of the input transport running more frequently than the 360 seconds that you specified.&amp;nbsp; That is assuming you don't have direct access to the transport code to debug.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If that checks out fine then I've got another idea.&amp;nbsp; The inbound adapter sample as packaged uses the bulk ByteBuffer.get method but with a limitation of 10 bytes on the byte array that it is going to copy bytes to.&amp;nbsp; If your incoming ByteBuffer data is larger than that 10 bytes, the bulk get method will only move the read position in the buffer that 10 bytes.&amp;nbsp; Adapt will continue to get called until the entire buffer is consumed, up to the buffer limit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So you could do either of the following:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Make the byte array larger to a hard coded size (100, 1024, etc)&lt;UL&gt;&lt;LI&gt;&lt;P&gt;byte[] data = new byte[1024];&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;buffer.get(data);&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;Create the byte array to be as large as the incoming buffer data size&lt;UL&gt;&lt;LI&gt;&lt;P&gt;byte[] data= new byte[buffer.remaining()];&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;buffer.get(data);&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;There is a maximum size limitation on the incoming buffer, I think it is 20 MB or around there.&amp;nbsp; Might be larger in later versions (greater than 10.2.2).&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 31 Oct 2014 21:55:52 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-geoevent-server-questions/custom-adapter-called-more-than-the-frequency-set/m-p/624479#M2746</guid>
      <dc:creator>JacobHays</dc:creator>
      <dc:date>2014-10-31T21:55:52Z</dc:date>
    </item>
  </channel>
</rss>

