Interface Filter

All Known Implementing Classes:
AbstractFilter

public interface Filter
Given an iCalendar object applies some sort of transform to the object. This may involve adding, removing or changing properties.

Standard filters will carry out global processing. Other filters may be defined which are specific to a connection or item type.

Each input filter will be called when items are read to be added.

When comparing items the addDifferSkipItems will be called to build a list of properties, components etc to be ignored when comparing. There is no need to transform either entity as the compare result will not take tthe ignored fields into account.

Author:
douglm
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Called to add items to the skip list for the ical differ.
    ietf.params.xml.ns.icalendar_2.IcalendarType
    doFilter(ietf.params.xml.ns.icalendar_2.IcalendarType val)
     
    void
    Initialise the filter.
  • Method Details

    • init

      void init(Subscription sub) throws SynchException
      Initialise the filter.
      Parameters:
      sub - the subscription
      Throws:
      SynchException - on fatal error
    • doFilter

      ietf.params.xml.ns.icalendar_2.IcalendarType doFilter(ietf.params.xml.ns.icalendar_2.IcalendarType val) throws SynchException
      Parameters:
      val - the object to process
      Returns:
      null for discarded object, otherwise possibly modified object
      Throws:
      SynchException - on fatal error
    • addDifferSkipItems

      void addDifferSkipItems(List<Object> skipList) throws SynchException
      Called to add items to the skip list for the ical differ.
      Parameters:
      skipList - list of items to skip - properties parameters etc
      Throws:
      SynchException - on fatal error