Package runtimeconfig.remoteobjects

Source Code of runtimeconfig.remoteobjects.RuntimeLogTargets

/************************************************************************
*
* ADOBE CONFIDENTIAL
* __________________
*
*  [2002] - [2007] Adobe Systems Incorporated
*  All Rights Reserved.
*
* NOTICE:  All information contained herein is, and remains
* the property of Adobe Systems Incorporated and its suppliers,
* if any.  The intellectual and technical concepts contained
* herein are proprietary to Adobe Systems Incorporated
* and its suppliers and may be covered by U.S. and Foreign Patents,
* patents in process, and are protected by trade secret or copyright law.
* Dissemination of this information or reproduction of this material
* is strictly forbidden unless prior written permission is obtained
* from Adobe Systems Incorporated.
**************************************************************************/
package runtimeconfig.remoteobjects;

import flex.messaging.log.ConsoleTarget;
import flex.messaging.log.Log;
import flex.messaging.log.LogEvent;

/*
* This class allows logging levels to be changed dynamically from Error to Debug (and vice-versa).
*/
public class RuntimeLogTargets
{   

  public String createLogTarget(String target)
  {
    short currentLevel = ((ConsoleTarget)Log.getTargets().get(0)).getLevel();
    String retVal = "Log level did not change. Default target level: " + LogEvent.getLevelString(currentLevel);
   
    if (target.equals("Debug"))
    {
      currentLevel = createDebugLogTarget();
      retVal = LogEvent.getLevelString(currentLevel);
    }
    else if (target.equals("Error"))
    {
      currentLevel = createErrorLogTarget();
      retVal = LogEvent.getLevelString(currentLevel);     
    }
   
    return retVal;
  }
 
  /*
   * The purpose of this method is to replace the default "Error" logging target
   * with Debug log level and specific filters. 
   * Verification of the log must be manually done against the console output.
   *
     <target class="flex.messaging.log.ConsoleTarget" level="Debug">
        <properties>
            <prefix>[LCDS] </prefix>
            <includeDate>false</includeDate>
            <includeTime>true</includeTime>
            <includeLevel>true</includeLevel>
            <includeCategory>true</includeCategory>
        </properties>
        <filters>
            <pattern>Service.Data.*</pattern>
            <pattern>Message.*</pattern>
        </filters>
    </target>
     */
    private short createDebugLogTarget()
    {
      //Remove any other targets
      Log.reset();
     
        //Up the logging level to debug, and create a logging target dynamically
      ConsoleTarget myTarget = new ConsoleTarget();
        myTarget.setLevel(LogEvent.DEBUG);
        myTarget.setPrefix("[LCDS] ");
        //myTarget.setIncludeDate(true);
        myTarget.setIncludeTime(true);
        myTarget.setIncludeLevel(true);
        myTarget.setIncludeCategory(true);
        //myTarget.addFilter("Startup.*");
        myTarget.addFilter("Service.Data.*");
        myTarget.addFilter("Message.*");
        myTarget.addFilter("Endpoint.*");
       
        //Add the new Debug target
        Log.addTarget(myTarget);
       
        return ((ConsoleTarget)Log.getTargets().get(0)).getLevel();
    }

  /*
   * Use this method to return to the Error log level in qa-manual app.
   *
     <target class="flex.messaging.log.ConsoleTarget" level="Error">
        <properties>
            <prefix>[Flex] </prefix>
            <includeDate>false</includeDate>
            <includeTime>true</includeTime>
            <includeLevel>true</includeLevel>
            <includeCategory>true</includeCategory>
        </properties>
        <filters>
            <pattern>Service.*</pattern>
            <pattern>Message.*</pattern>
            <pattern>DataService.*</pattern>
            <!--<pattern>Endpoint.*</pattern>-->
        </filters>
    </target>
     */
    private short createErrorLogTarget()
    {
      //Remove any other targets
      Log.reset();
     
      //Up the logging level to debug, and create a logging target dynamically
      ConsoleTarget myTarget = new ConsoleTarget();
        myTarget.setLevel(LogEvent.ERROR);
        myTarget.setPrefix("[Flex] ");
        myTarget.setIncludeDate(false);
        myTarget.setIncludeTime(true);
        myTarget.setIncludeLevel(true);
        myTarget.setIncludeCategory(true);
        myTarget.addFilter("Service.*");
        myTarget.addFilter("Message.*");
        myTarget.addFilter("DataService.*");       
        Log.addTarget(myTarget);
       
        return ((ConsoleTarget)Log.getTargets().get(0)).getLevel();
    }
}


TOP

Related Classes of runtimeconfig.remoteobjects.RuntimeLogTargets

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.