1   // ========================================================================
2   // Copyright 2007 Dojo Foundation
3   // ------------------------------------------------------------------------
4   // Licensed under the Apache License, Version 2.0 (the "License");
5   // you may not use this file except in compliance with the License.
6   // You may obtain a copy of the License at 
7   // http://www.apache.org/licenses/LICENSE-2.0
8   // Unless required by applicable law or agreed to in writing, software
9   // distributed under the License is distributed on an "AS IS" BASIS,
10  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11  // See the License for the specific language governing permissions and
12  // limitations under the License.
13  //========================================================================
14  
15  package dojox.cometd;
16  
17  
18  /* ------------------------------------------------------------ */
19  /** Data Filter
20   * Data filters are used to transform data as it is sent to a Channel.
21   * 
22   */
23  public interface DataFilter
24  {
25      /**
26       * @param from
27       * @param to TODO
28       * @param data
29       * @return The filtered data.
30       * @throws IllegalStateException If the message should be aborted
31       */
32      Object filter(Client from, Channel to, Object data) throws IllegalStateException;
33  }