Package org.wicketstuff.jquery.jgrowl

Source Code of org.wicketstuff.jquery.jgrowl.JGrowlFeedbackMessage

package org.wicketstuff.jquery.jgrowl;

import org.apache.wicket.feedback.FeedbackMessage;
import org.apache.wicket.util.io.IClusterable;
import org.wicketstuff.jquery.Options;

/**
* A feedback message that will be shown as JGrowl message
* (http://www.stanlemon.net/projects/jgrowl.html)
*
* @author martin-g
*/
public class JGrowlFeedbackMessage implements IClusterable
{

  private static final long serialVersionUID = 1L;

  private final String message;

  /**
   * A list with all supported messages could be found at:
   * (http://www.stanlemon.net/projects/jgrowl.html#options)
   */
  private final Options options;

  public JGrowlFeedbackMessage(final FeedbackMessage feedbackMessage)
  {

    message = feedbackMessage.getMessage().toString();

    switch (feedbackMessage.getLevel())
    {
      case FeedbackMessage.ERROR :
        options = newErrorOptions();
        break;
      case FeedbackMessage.FATAL :
        options = newFatalOptions();
        break;
      case FeedbackMessage.DEBUG :
        options = newDebugOptions();
        break;
      case FeedbackMessage.WARNING :
        options = newWarningOptions();
        break;
      case FeedbackMessage.INFO :
        options = newInfoOptions();
        break;
      case FeedbackMessage.SUCCESS :
        options = newSuccessOptions();
        break;
      default :
        options = new Options();
    }
  }

  protected Options newFatalOptions()
  {

    return new Options();
  }

  protected Options newDebugOptions()
  {

    return new Options();
  }

  protected Options newWarningOptions()
  {

    return new Options();
  }

  protected Options newInfoOptions()
  {

    final Options infoOptions = new Options();

    return infoOptions;
  }

  protected Options newSuccessOptions()
  {

    final Options successOptions = new Options();

    return successOptions;
  }

  protected Options newErrorOptions()
  {

    return new Options();
  }

  /**
   * Constructs the JGrowl invocation E.g.: '$.jGrowl("A message", {'option1' : 'value1',
   * 'option2' : 'value2' })'
   *
   * @return the jGrowl JavaScript
   */
  public String toJavaScript()
  {

    final StringBuilder javaScript = new StringBuilder();
    javaScript.append("$.jGrowl(\"");
    javaScript.append(message);
    javaScript.append("\"");
    if (options != null)
    {
      javaScript.append(", ");
      javaScript.append(options.toString());
    }
    javaScript.append(");");

    return javaScript.toString();
  }
}
TOP

Related Classes of org.wicketstuff.jquery.jgrowl.JGrowlFeedbackMessage

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.