@@ -82,17 +82,6 @@ public synchronized void saveRawReferrer(final String rawReferrer, final long cl
8282
8383 JSONArray rawReferrerArray = getRawReferrerArray ();
8484
85- // Initial move for those who have more than REFERRERS_COUNT stored already.
86- // Cut the array and leave it with only REFERRERS_COUNT elements.
87- if (rawReferrerArray .length () > REFERRERS_COUNT ) {
88- JSONArray tempReferrerArray = new JSONArray ();
89- for (int i = 0 ; i < REFERRERS_COUNT ; i += 1 ) {
90- tempReferrerArray .put (rawReferrerArray .get (i ));
91- }
92- saveRawReferrerArray (tempReferrerArray );
93- return ;
94- }
95-
9685 // There are exactly REFERRERS_COUNT saved referrers, do nothing.
9786 if (rawReferrerArray .length () == REFERRERS_COUNT ) {
9887 return ;
@@ -188,6 +177,19 @@ public synchronized JSONArray getRawReferrerArray() {
188177
189178 if (referrerQueueString != null ) {
190179 try {
180+ JSONArray rawReferrerArray = new JSONArray (referrerQueueString );
181+
182+ // Initial move for those who have more than REFERRERS_COUNT stored already.
183+ // Cut the array and leave it with only REFERRERS_COUNT elements.
184+ if (rawReferrerArray .length () > REFERRERS_COUNT ) {
185+ JSONArray tempReferrerArray = new JSONArray ();
186+ for (int i = 0 ; i < REFERRERS_COUNT ; i += 1 ) {
187+ tempReferrerArray .put (rawReferrerArray .get (i ));
188+ }
189+ saveRawReferrerArray (tempReferrerArray );
190+ return tempReferrerArray ;
191+ }
192+
191193 return new JSONArray (referrerQueueString );
192194 } catch (JSONException e ) {
193195 } catch (Throwable t ) {
0 commit comments