Class Ads

All Implemented Interfaces:
Animation, Editable, StyleListener, HTMLCallback, ParserCallback, Iterable<Component>

public class Ads extends Container implements HTMLCallback
This is an Ads Component, this Component can displays banner/text ads on a Form. This is a generic Ads Component that can support different type of Ads Network Services, at the Moment Codename One supports innerActive ads, to gain an appId please refer to http://console.inner-active.com/iamp/publisher/register?ref_id=affiliate_CodenameOne
  • Field Details

    • ERROR_CSS_ATTRIBUTE_NOT_SUPPORTED

      static final int ERROR_CSS_ATTRIBUTE_NOT_SUPPORTED
      Error code denoting that an unsupported CSS attribute (by XHTML-MP 1.0 standards) was found in the HTML or external CSS files
      See Also:
    • ERROR_CSS_ATTIBUTE_VALUE_INVALID

      static final int ERROR_CSS_ATTIBUTE_VALUE_INVALID
      Error code denoting that an invalid attribute value was found in the CSS
      See Also:
    • ERROR_CSS_NOT_FOUND

      static final int ERROR_CSS_NOT_FOUND
      Error code denoting that a CSS file referenced from the HTML or from another external CSS file was not found
      See Also:
    • ERROR_CSS_NO_BASE_URL

      static final int ERROR_CSS_NO_BASE_URL
      Error code denoting that a relative URL was referenced from a document with no base URL (A document that was loaded via setBody/setHTML/setDOM and not via setPage) In this case the return value of parsingError is not considered - parsing continues and the resource at the URL (CSS file/image) is ignored
      See Also:
  • Constructor Details

    • Ads

      public Ads()
      Default constructor for GUI builder
    • Ads

      public Ads(String appId)

      Simple constructor to create an Ad Component

      Parameters
      • appId: @param appId unique identifier of the app, to gain an appId please refer to http://console.inner-active.com/iamp/publisher/register?ref_id=affiliate_CodenameOne
    • Ads

      public Ads(String appId, boolean refreshAd)
      Parameters
      • appId: @param appId unique identifier of the app, to gain an appId please refer to http://console.inner-active.com/iamp/publisher/register?ref_id=affiliate_CodenameOne

      • refreshAd: @param refreshAd if true this Component will refresh the Ad every 60 seconds, if false no refresh will occur

  • Method Details

    • initComponent

      public void initComponent()
      Allows subclasses to bind functionality that relies on fully initialized and "ready for action" component state
      Overrides:
      initComponent in class Component
    • deinitialize

      protected void deinitialize()
      Invoked to indicate that the component initialization is being reversed since the component was detached from the container hierarchy. This allows the component to deregister animators and cleanup after itself. This method is the opposite of the initComponent() method.
      Overrides:
      deinitialize in class Component
    • animate

      public boolean animate()

      Allows the animation to reduce "repaint" calls when it returns false. It is called once for every frame. Frames are defined by the com.codename1.ui.Display class.

      Returns

      true if a repaint is desired or false if no repaint is necessary

      Specified by:
      animate in interface Animation
      Overrides:
      animate in class Component
    • keyReleased

      public void keyReleased(int code)

      If this Component is focused, the key released event will call this method

      Parameters
      • keyCode: the key code value to indicate a physical key.
      Overrides:
      keyReleased in class Container
    • pointerReleased

      public void pointerReleased(int x, int y)

      If this Component is focused, the pointer released event will call this method

      Parameters
      • x: the pointer x coordinate

      • y: the pointer y coordinate

      Overrides:
      pointerReleased in class Component
    • getAd

      public String getAd()

      HTML ad received from the server

      Returns

      the ad

    • setAd

      public void setAd(String ad)

      HTML ad received from the server

      Parameters
      • ad: the ad to set
    • getUpdateDuration

      public int getUpdateDuration()

      The amount of time needed to update the ad

      Returns

      the updateDuration

    • setUpdateDuration

      public void setUpdateDuration(int updateDuration)

      The amount of time needed to update the ad

      Parameters
      • updateDuration: the updateDuration to set
    • titleUpdated

      public void titleUpdated(HTMLComponent htmlC, String title)

      Called when the page's title is updated

      Parameters
      • htmlC: The HTMLComponent that triggered the event

      • title: The new title

      Specified by:
      titleUpdated in interface HTMLCallback
    • pageStatusChanged

      public void pageStatusChanged(HTMLComponent htmlC, int status, String url)

      Called when the page status has been changed

      Parameters
      • htmlC: The HTMLComponent in which the status change occured

      • status: The new status, one of the STATUS_* constants

      • url: The URL of the page

      Specified by:
      pageStatusChanged in interface HTMLCallback
    • fieldSubmitted

      public String fieldSubmitted(HTMLComponent htmlC, TextArea ta, String actionURL, String id, String value, int type, String errorMsg)

      Called whenever a field is submitted to a form. This can be used to perform sanity checks and/or to store values for auto complete.

      Parameters
      • htmlC: The HTMLComponent in which this event occured

      • ta: The TextArea/TextField of this field

      • actionURL: The action URL of the form

      • id: The ID of the field

      • value: The value entered

      • type: The type of the field, one of the FIELD_* constants

      • errorMsg: The error message if any error occured (i.e. input validation error) or null if no error occured

      Returns

      The string to submit to the form (Should return value if nothing changed)

      Specified by:
      fieldSubmitted in interface HTMLCallback
    • getAutoComplete

      public String getAutoComplete(HTMLComponent htmlC, String actionURL, String id)

      Called on form creation and enabled implementations of this method to return a value to preset in a form field. This can be used to auto complete previously entered value Note that this method is always called NOT on the EDT thread.

      Parameters
      • htmlC: The HTMLComponent in which this event occured

      • actionURL: The action URL of the form

      • id: The ID of the field

      Returns

      The string to place in the indicated field

      Specified by:
      getAutoComplete in interface HTMLCallback
    • getLinkProperties

      public int getLinkProperties(HTMLComponent htmlC, String url)

      Returns properties about the given link to indicate to HTMLComponent how to render it Note that this method is always called NOT on the EDT thread.

      Parameters
      • htmlC: The HTMLComponent

      • url: The Link URL

      Returns

      LINK_REGULAR or LINK_VISITED or LINK_FORBIDDEN or a mask of those

      Specified by:
      getLinkProperties in interface HTMLCallback
    • linkClicked

      public boolean linkClicked(HTMLComponent htmlC, String url)

      Called when a link is clicked. This can be used to process links that needs additional/alternate handling than fetching an HTML.

      Parameters
      • htmlC: The HTMLComponent

      • url: The Link URL

      Returns

      true if regular link processing should continue, false otherwise

      Specified by:
      linkClicked in interface HTMLCallback
    • actionPerformed

      public void actionPerformed(ActionEvent evt, HTMLComponent htmlC, HTMLElement element)

      Called whenever an ActionEvent is triggered in one of the controls in the HTMLComponent For example, button press, checkbox/radiobutton check etc. This method will be called only if HTMLComponent.isEventsEnabled() is true

      Parameters
      • evt: The event triggered, the component can be extracted using getSource

      • htmlC: The HTMLComponent

      • element: The element associated with the component that triggered the event

      Specified by:
      actionPerformed in interface HTMLCallback
    • focusGained

      public void focusGained(Component cmp, HTMLComponent htmlC, HTMLElement element)

      Called when one of the controls in the HTMLComponent obtained focus This method will be called only if HTMLComponent.isEventsEnabled() is true

      Parameters
      • cmp: The component that triggered the event

      • htmlC: The HTMLComponent

      • element: The element associated with the component that triggered the event

      Specified by:
      focusGained in interface HTMLCallback
    • focusLost

      public void focusLost(Component cmp, HTMLComponent htmlC, HTMLElement element)

      Called when one of the controls in the HTMLComponent lost focus This method will be called only if HTMLComponent.isEventsEnabled() is true

      Parameters
      • cmp: The component that triggered the event

      • htmlC: The HTMLComponent

      • element: The element associated with the component that triggered the event

      Specified by:
      focusLost in interface HTMLCallback
    • dataChanged

      public void dataChanged(int type, int index, HTMLComponent htmlC, TextField textField, HTMLElement element)

      Called when the user types in a TextField inside the HTMLComponent This method will be called only if HTMLComponent.isEventsEnabled() is true

      Parameters
      • type: the type data change; REMOVED, ADDED or CHANGED

      • index: item index in a list model

      • htmlC: The HTMLComponent

      • textField: The TextField that triggerd the event

      • element: The element associated with the component that triggered the event (Should be TAG_INPUT with type text/password)

      Specified by:
      dataChanged in interface HTMLCallback
    • 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
    • selectionChanged

      public void selectionChanged(int oldSelected, int newSelected, HTMLComponent htmlC, List list, HTMLElement element)

      Called when the user selects an item in a List inside the HTMLComponent Note: Selection is traversing through the items - once the user has actually decided, an ActionEvent will be sent as well This method will be called only if HTMLComponent.isEventsEnabled() is true

      Parameters
      • oldSelected: old selected index in list model

      • newSelected: new selected index in list model

      • htmlC: The HTMLComponent

      • list: The list that triggered the event (Usually a ComboBox but not always)

      • element: The element associated with the component that triggered the event (Should be TAG_SELECT)

      Specified by:
      selectionChanged in interface HTMLCallback
    • setHeight

      public void setHeight(int height)

      Sets the Component height, this method is exposed for the purpose of external layout managers and should not be invoked directly.

      If a user wishes to affect the component size, setPreferredSize should be used.

      Parameters
      • height: the height of the component
      See also
      • #setPreferredSize
      Overrides:
      setHeight in class Component
    • getAppID

      public String getAppID()

      Simple getter of the unique identifier of the app on the ads service network.

      Returns

      the app unique identifier.

    • setAppID

      public void setAppID(String appId)

      Simple setter of the unique identifier of the app on the ads service network, no need to manually use this the createAdsService uses this.

      Parameters
      • appId: @param appId unique identifier of the app, to gain an appId please refer to http://console.inner-active.com/iamp/publisher/register?ref_id=affiliate_CodenameOne
    • getAge

      public String getAge()

      Users age

      Returns

      the user age

    • setAge

      public void setAge(String age)

      Sets the users age

      Parameters
      • age
    • getGender

      public String getGender()
      The user gender can be: M/m, F/f, Male, Female.
    • setGender

      public void setGender(String gender)

      Sets Gender if applicable can be one of the following: 'F', 'f', 'M', 'm', 'Female', 'female', 'Male', 'male'

      Parameters
      • gender
    • getKeywords

      public String[] getKeywords()
      Keywords relevant to this user specific session
    • setKeywords

      public void setKeywords(String[] keywords)

      Keywords relevant to this user specific session

      Parameters
      • keywords
    • getCategory

      public String getCategory()

      Category is a single word description of the application.

      Returns

      a single word description of the application.

    • setCategory

      public void setCategory(String category)

      Category is a single word description of the application.

      Parameters
      • category
    • getLocation

      public String getLocation()
      Location string is a comma separated list of country, state/province, city For example: US, NY, NY
    • setLocation

      public void setLocation(String location)

      Location string is a comma separated list of country, state/province, city For example: US, NY, NY

      Parameters
      • location
    • getPropertyNames

      public String[] getPropertyNames()

      A component may expose mutable property names for a UI designer to manipulate, this API is designed for usage internally by the GUI builder code

      Returns

      the property names allowing mutation

      Overrides:
      getPropertyNames in class Component
    • getPropertyTypes

      public Class[] getPropertyTypes()

      Matches the property names method (see that method for further details).

      Returns

      the types of the properties

      Overrides:
      getPropertyTypes in class Component
    • getPropertyTypeNames

      public String[] getPropertyTypeNames()

      This method is here to workaround an XMLVM array type bug where property types aren't identified properly, it returns the names of the types using the following type names: String,int,double,long,byte,short,char,String[],String[][],byte[],Image,Image[],Object[],ListModel,ListCellRenderer

      Returns

      Array of type names

      Overrides:
      getPropertyTypeNames in class Component
    • getPropertyValue

      public Object getPropertyValue(String name)

      Returns the current value of the property name, this method is used by the GUI builder

      Parameters
      • name: the name of the property
      Returns

      the value of said property

      Overrides:
      getPropertyValue in class Component
    • setPropertyValue

      public String setPropertyValue(String name, Object value)

      Sets a new value to the given property, returns an error message if failed and null if successful. Notice that some builtin properties such as "$designMode" might be sent to components to indicate application state.

      Parameters
      • name: the name of the property

      • value: new value for the property

      Returns

      error message or null

      Overrides:
      setPropertyValue in class Component