# Class RSSService

java.lang.Object
com.codename1.io.ConnectionRequest
com.codename1.io.services.RSSService

All Implemented Interfaces:
  `IOProgressListener, ParserCallback`

public class RSSService extends ConnectionRequest implements ParserCallback
Simple RSS read and parse request, to handle errors just subclass this and override parsingError.

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from class ConnectionRequest

  `ConnectionRequest.CachingMode, ConnectionRequest.SSLCertificate`

- ## Field Summary

  ### Fields inherited from class ConnectionRequest

  `PRIORITY_CRITICAL, PRIORITY_HIGH, PRIORITY_LOW, PRIORITY_NORMAL, PRIORITY_REDUNDANT`

  ### Fields inherited from interface ParserCallback

  `ERROR_ATTIBUTE_VALUE_INVALID, ERROR_ATTRIBUTE_NOT_SUPPORTED, ERROR_ENCODING, ERROR_MULTIPLE_ROOTS, ERROR_NO_CLOSE_TAG, ERROR_NO_ROOTS, ERROR_TAG_NOT_SUPPORTED, ERROR_UNEXPECTED_CHARACTER, ERROR_UNEXPECTED_TAG_CLOSING, ERROR_UNRECOGNIZED_CHAR_ENTITY`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `RSSService(String url)`
  Simple constructor accepting the RSS url
  `RSSService(String url, int limit)`
  Simple constructor accepting the RSS url
  `RSSService(String url, int limit, int startOffset)`
  Simple constructor accepting the RSS url

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `equals(Object o)`
  Indicates whether some other object is "equal to" this one.
  `Image`
  `getIconPlaceholder()`

  ###### Returns

  `Vector`
  `getResults()`
  The results are presented as a vector of hashtables easily presentable in Codename One
  `int`
  `hashCode()`
  Returns a hash code value for the object.
  `boolean`
  `hasMore()`
  Indicates whether more entries might be available since the limt might have been reached
  `boolean`
  `isCreatePlainTextDetails()`
  Creates an additional "details" attribute in the resulting hashtables which effectively contains a plain text version of the description tag.
  `boolean`
  `parsingError(int errorId, String tag, String attribute, String value, String description)`
  Called when encountering an error while parsing the XML document.
  `protected void`
  `readResponse(InputStream input)`
  Callback for the server response with the input stream from the server.
  `void`
  `setCreatePlainTextDetails(boolean createPlainTextDetails)`
  Creates an additional "details" attribute in the resulting hashtables which effectively contains a plain text version of the description tag.
  `void`
  `setIconPlaceholder(Image iconPlaceholder)`

  ###### Parameters

  ### Methods inherited from class ConnectionRequest

  `addArgument, addArgument, addArgument, addArgumentArray, addArgumentNoEncoding, addArgumentNoEncoding, addArgumentNoEncodingArray, addArguments, addExceptionListener, addRequestHeader, addResponseCodeListener, addResponseListener, buildRequestBody, cacheUnmodified, canGetSSLCertificates, checkSSLCertificates, cookieReceived, cookieSent, createRequestURL, downloadImageToFileSystem, downloadImageToFileSystem, downloadImageToFileSystem, downloadImageToFileSystem, downloadImageToFileSystem, downloadImageToFileSystem, downloadImageToStorage, downloadImageToStorage, downloadImageToStorage, downloadImageToStorage, downloadImageToStorage, downloadImageToStorage, fetchJSON, fetchJSONAsync, fireResponseListener, getCachedData, getCacheMode, getContentLength, getContentType, getCookieHeader, getDefaultCacheMode, getDefaultUserAgent, getDestinationFile, getDestinationStorage, getDisposeOnCompletion, getHeader, getHeaderFieldNames, getHeaders, getHttpMethod, getPriority, getReadTimeout, getRequestBody, getRequestBodyData, getResponseCode, getResponseContentType, getResponseData, getResponseErrorMessage, getResposeCode, getShowOnInit, getSilentRetryCount, getSSLCertificates, getTimeout, getUrl, getUserAgent, getYield, handleErrorResponseCode, handleException, handleIOException, handleRuntimeException, hasResponseListeners, initConnection, initCookieHeader, ioStreamUpdate, isCheckSSLCertificates, isCookiesEnabled, isCookiesEnabledDefault, isDefaultFollowRedirects, isDuplicateSupported, isFailSilently, isFollowRedirects, isHandleErrorCodesInGlobalErrorHandler, isInsecure, isKilled, isNativeCookieSharingSupported, isPausable, isPaused, isPost, isReadRequest, isReadResponseForErrors, isReadResponseForErrorsDefault, isReadTimeoutSupported, isRedirecting, isWriteRequest, kill, onRedirect, pause, postResponse, purgeCache, purgeCacheDirectory, readErrorCodeHeaders, readHeaders, removeAllArguments, removeArgument, removeExceptionListener, removeResponseCodeListener, removeResponseListener, resume, retry, setCacheMode, setCheckSSLCertificates, setChunkedStreamingMode, setContentType, setCookieHeader, setCookiesEnabled, setCookiesEnabledDefault, setDefaultCacheMode, setDefaultFollowRedirects, setDefaultUserAgent, setDestinationFile, setDestinationStorage, setDisposeOnCompletion, setDuplicateSupported, setFailSilently, setFollowRedirects, setHandleErrorCodesInGlobalErrorHandler, setHttpMethod, setInsecure, setKilled, setPaused, setPost, setPriority, setReadRequest, setReadResponseForErrors, setReadResponseForErrorsDefault, setReadTimeout, setRequestBody, setRequestBody, setShowOnInit, setSilentRetryCount, setTimeout, setUrl, setUseNativeCookieStore, setUserAgent, setWriteRequest, shouldAutoCloseResponse, shouldConvertPostToGetOnRedirect, shouldStop, shouldWriteUTFAsGetBytes, validate`

  ### Methods inherited from class Object

  `clone, getClass, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### RSSService

    public RSSService(String url)

    Simple constructor accepting the RSS url

    ###### Parameters

    - `url`: rss link

  - ### RSSService

    public RSSService(String url, int limit)

    Simple constructor accepting the RSS url

    ###### Parameters

    - `url`: rss link

    - `limit`: the limit on the number of RSS entries supported

  - ### RSSService

    public RSSService(String url, int limit, int startOffset)

    Simple constructor accepting the RSS url

    ###### Parameters

    - `url`: rss link

    - `limit`: the limit on the number of RSS entries supported

    - `startOffset`: @param startOffset indicates the entry offset which we are interested in, this is useful if previously the limit for RSS entries was reached.

- ## Method Details

  - ### equals

    public boolean equals(Object o)
    Description copied from class: `ConnectionRequest`
    Indicates whether some other object is "equal to" this one. The equals method implements an equivalence relation: It is reflexive: for any reference value x, x.equals(x) should return true. It is symmetric: for any reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true. It is transitive: for any reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true. It is consistent: for any reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the object is modified. For any non-null reference value x, x.equals(null) should return false. The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any reference values x and y, this method returns true if and only if x and y refer to the same object (x==y has the value true).
    Overrides:
      `equals` in class `ConnectionRequest`

  - ### hashCode

    public int hashCode()
    Returns a hash code value for the object. This method is supported for the benefit of hashtables such as those provided by java.util.Hashtable. The general contract of hashCode is: Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application. If two objects are equal according to the equals(Object) method, then calling the hashCode method on each of the two objects must produce the same integer result. It is not required that if two objects are unequal according to the equals(java.lang.Object) method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hashtables. As much as is reasonably practical, the hashCode method defined by class Object does return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the JavaTM programming language.)
    Overrides:
      `hashCode` in class `ConnectionRequest`

  - ### readResponse

    protected void readResponse(InputStream input) throws IOException

    Callback for the server response with the input stream from the server. This method is invoked on the network thread

    ###### Parameters

    - `input`: the input stream containing the response

    ###### Throws

    - `IOException`: when a read input occurs
    Overrides:
      `readResponse` in class `ConnectionRequest`
    Throws:
      `IOException`

  - ### getResults

    public Vector getResults()

    The results are presented as a vector of hashtables easily presentable in Codename One

    ###### Returns

    vector of hashtables

  - ### parsingError

    public boolean parsingError(int errorId, String tag, String attribute, String value, String description)

    Called when encountering an error while parsing the XML document. When implementing this, the developer should return true if the error should be ignored and the document needs to be further parsed, or false to stop parsing and issue an error to the user Note that this method is always called NOT on the EDT thread.

    ###### Parameters

    - `errorId`: The error ID, one of the ERROR_* constants

    - `tag`: The tag in which the error occured (Can be null for non-tag related errors)

    - `attribute`: The attribute in which the error occured (Can be null for non-attribute related errors)

    - `value`: The value in which the error occured (Can be null for non-value related errors)

    - `description`: A verbal description of the error

    ###### Returns

    true to continue parsing, false to stop

    Specified by:
      `parsingError` in interface `ParserCallback`

  - ### hasMore

    public boolean hasMore()

    Indicates whether more entries might be available since the limt might have been reached

    ###### Returns

    the hasMore

  - ### isCreatePlainTextDetails

    public boolean isCreatePlainTextDetails()

    Creates an additional "details" attribute in the resulting hashtables which effectively contains a plain text version of the description tag.

    ###### Returns

    the createPlainTextDetails

  - ### setCreatePlainTextDetails

    public void setCreatePlainTextDetails(boolean createPlainTextDetails)

    Creates an additional "details" attribute in the resulting hashtables which effectively contains a plain text version of the description tag.

    ###### Parameters

    - `createPlainTextDetails`: the createPlainTextDetails to set

  - ### getIconPlaceholder

    public Image getIconPlaceholder()

    ###### Returns

    the iconPlaceholder

  - ### setIconPlaceholder

    public void setIconPlaceholder(Image iconPlaceholder)

    ###### Parameters

    - `iconPlaceholder`: the iconPlaceholder to set