Coverage Report - com.allanbank.mongodb.client.callback.TextCallback
 
Classes in this File Line Coverage Branch Coverage Complexity
TextCallback
100%
12/12
100%
2/2
1.333
 
 1  
 /*
 2  
  * #%L
 3  
  * TextCallback.java - mongodb-async-driver - Allanbank Consulting, Inc.
 4  
  * %%
 5  
  * Copyright (C) 2011 - 2014 Allanbank Consulting, Inc.
 6  
  * %%
 7  
  * Licensed under the Apache License, Version 2.0 (the "License");
 8  
  * you may not use this file except in compliance with the License.
 9  
  * You may obtain a copy of the License at
 10  
  * 
 11  
  *      http://www.apache.org/licenses/LICENSE-2.0
 12  
  * 
 13  
  * Unless required by applicable law or agreed to in writing, software
 14  
  * distributed under the License is distributed on an "AS IS" BASIS,
 15  
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 16  
  * See the License for the specific language governing permissions and
 17  
  * limitations under the License.
 18  
  * #L%
 19  
  */
 20  
 
 21  
 package com.allanbank.mongodb.client.callback;
 22  
 
 23  
 import java.util.ArrayList;
 24  
 import java.util.List;
 25  
 
 26  
 import com.allanbank.mongodb.Callback;
 27  
 import com.allanbank.mongodb.MongoIterator;
 28  
 import com.allanbank.mongodb.bson.Document;
 29  
 import com.allanbank.mongodb.builder.ConditionBuilder;
 30  
 import com.allanbank.mongodb.client.SimpleMongoIteratorImpl;
 31  
 
 32  
 /**
 33  
  * TextCallback provides conversion from a
 34  
  * {@link com.allanbank.mongodb.builder.Text text} command's result document to
 35  
  * a {@link com.allanbank.mongodb.builder.TextResult}.
 36  
  * 
 37  
  * @api.no This class is <b>NOT</b> part of the drivers API. This class may be
 38  
  *         mutated in incompatible ways between any two releases of the driver.
 39  
  * @deprecated Support for the {@code text} command was deprecated in the 2.6
 40  
  *             version of MongoDB. Use the {@link ConditionBuilder#text(String)
 41  
  *             $text} query operator instead. This class will not be removed
 42  
  *             until two releases after the MongoDB 2.6 release (e.g. 2.10 if
 43  
  *             the releases are 2.8 and 2.10).
 44  
  * @copyright 2013, Allanbank Consulting, Inc., All Rights Reserved
 45  
  */
 46  2
 @Deprecated
 47  
 public class TextCallback implements Callback<MongoIterator<Document>> {
 48  
 
 49  
     /**
 50  
      * The delegate callback to receive the
 51  
      * {@link com.allanbank.mongodb.builder.TextResult}s.
 52  
      * 
 53  
      * @deprecated Support for the {@code text} command was deprecated in the
 54  
      *             2.6 version of MongoDB. Use the
 55  
      *             {@link ConditionBuilder#text(String) $text} query operator
 56  
      *             instead. This class will not be removed until two releases
 57  
      *             after the MongoDB 2.6 release (e.g. 2.10 if the releases are
 58  
      *             2.8 and 2.10).
 59  
      */
 60  
     @Deprecated
 61  
     private final Callback<MongoIterator<com.allanbank.mongodb.builder.TextResult>> myDelegate;
 62  
 
 63  
     /**
 64  
      * Creates a new TextCallback.
 65  
      * 
 66  
      * @param delegate
 67  
      *            The delegate callback to receive the
 68  
      *            {@link com.allanbank.mongodb.builder.TextResult}s.
 69  
      * @deprecated Support for the {@code text} command was deprecated in the
 70  
      *             2.6 version of MongoDB. Use the
 71  
      *             {@link ConditionBuilder#text(String) $text} query operator
 72  
      *             instead. This class will not be removed until two releases
 73  
      *             after the MongoDB 2.6 release (e.g. 2.10 if the releases are
 74  
      *             2.8 and 2.10).
 75  
      */
 76  
     @Deprecated
 77  
     public TextCallback(
 78  4
             final Callback<MongoIterator<com.allanbank.mongodb.builder.TextResult>> delegate) {
 79  4
         myDelegate = delegate;
 80  4
     }
 81  
 
 82  
     /**
 83  
      * {@inheritDoc}
 84  
      * <p>
 85  
      * Overridden to convert each document into a
 86  
      * {@link com.allanbank.mongodb.builder.TextResult} and forward to the
 87  
      * delegate.
 88  
      * </p>
 89  
      * 
 90  
      * @deprecated Support for the {@code text} command was deprecated in the
 91  
      *             2.6 version of MongoDB. Use the
 92  
      *             {@link ConditionBuilder#text(String) $text} query operator
 93  
      *             instead. This class will not be removed until two releases
 94  
      *             after the MongoDB 2.6 release (e.g. 2.10 if the releases are
 95  
      *             2.8 and 2.10).
 96  
      */
 97  
     @Override
 98  
     @Deprecated
 99  
     public void callback(final MongoIterator<Document> result) {
 100  3
         final List<com.allanbank.mongodb.builder.TextResult> results = new ArrayList<com.allanbank.mongodb.builder.TextResult>();
 101  
 
 102  3
         for (final Document doc : result) {
 103  3
             results.add(new com.allanbank.mongodb.builder.TextResult(doc));
 104  3
         }
 105  
 
 106  3
         myDelegate
 107  
                 .callback(new SimpleMongoIteratorImpl<com.allanbank.mongodb.builder.TextResult>(
 108  
                         results));
 109  3
     }
 110  
 
 111  
     /**
 112  
      * {@inheritDoc}
 113  
      * <p>
 114  
      * Overridden to forward to the delegate callback.
 115  
      * </p>
 116  
      * 
 117  
      * @deprecated Support for the {@code text} command was deprecated in the
 118  
      *             2.6 version of MongoDB. Use the
 119  
      *             {@link ConditionBuilder#text(String) $text} query operator
 120  
      *             instead. This class will not be removed until two releases
 121  
      *             after the MongoDB 2.6 release (e.g. 2.10 if the releases are
 122  
      *             2.8 and 2.10).
 123  
      */
 124  
     @Override
 125  
     @Deprecated
 126  
     public void exception(final Throwable thrown) {
 127  1
         myDelegate.exception(thrown);
 128  1
     }
 129  
 }