Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
Sonatype Nexus (TM) Open Source Version Copyright (c) 2007-2012 Sonatype, Inc. All rights reserved. Includes the third-party code listed at http://links.sonatype.com/products/nexus/oss/attributions. This program and the accompanying materials are made available under the terms of the Eclipse Public License Version 1.0, which accompanies this distribution and is available at http://www.eclipse.org/legal/epl-v10.html. Sonatype Nexus (TM) Professional Version is available from Sonatype, Inc. "Sonatype" and "Sonatype Nexus" are trademarks of Sonatype, Inc. Apache Maven is a trademark of the Apache Software Foundation. M2eclipse is a trademark of the Eclipse Foundation. All other trademarks are the property of their respective owners.
 
 package org.sonatype.nexus.rest.logs;
 
 
 import  javax.ws.rs.Consumes;
 import  javax.ws.rs.GET;
 import  javax.ws.rs.PUT;
 import  javax.ws.rs.Path;
 import  javax.ws.rs.Produces;
 
 import  org.codehaus.enunciate.contract.jaxrs.ResourceMethodSignature;
 import  org.restlet.Context;
 import  org.restlet.data.Request;
 import  org.restlet.data.Response;
 import  org.restlet.data.Status;
 import  org.restlet.resource.ResourceException;
 import  org.restlet.resource.Variant;

Author(s):
juven
adreghiciu@gmail.com
 
 @Component( role = PlexusResource.class, hint = "logConfig" )
 @Produces( { "application/xml""application/json" } )
 @Consumes( { "application/xml""application/json" } )
 public class LogConfigPlexusResource
 {
     public static final String RESOURCE_URI = "/log/config";
    
    
The LogFile Manager
 
     @Requirement
     private LogManager logManager;
 
     public LogConfigPlexusResource()
     {
         this.setModifiabletrue );
     }
 
     @Override
     public Object getPayloadInstance()
     {
         return new LogConfigResourceResponse();
     }
 
     @Override
     {
         return new PathProtectionDescriptorgetResourceUri(), "authcBasic,perms[nexus:logconfig]" );
     }
 
     @Override
     public String getResourceUri()
     {
         return ;
     }

    
Get the logging configuration.
 
     @Override
     @GET
     @ResourceMethodSignature( output = LogConfigResourceResponse.class )
     public Object get( Context context, Request request, Response response, Variant variant )
         throws ResourceException
     {
         LogConfigResourceResponse result = new LogConfigResourceResponse();
 
         try
         {
             LogConfiguration configuration = .getConfiguration();
 
             LogConfigResource data = new LogConfigResource();
 
            data.setRootLoggerLevelconfiguration.getRootLoggerLevel() );
            data.setRootLoggerAppendersconfiguration.getRootLoggerAppenders() );
            data.setFileAppenderLocationconfiguration.getFileAppenderLocation() );
            data.setFileAppenderPatternconfiguration.getFileAppenderPattern() );
            result.setDatadata );
            return result;
        }
        catch ( IOException e )
        {
            getLogger().warn"Could not load log configuration!"e );
            throw new ResourceException( Status.SERVER_ERROR_INTERNAL );
        }
    }

    
Update the logging configuration.
    @Override
    @PUT
    @ResourceMethodSignature( input = LogConfigResourceResponse.class, output = LogConfigResourceResponse.class )
    public Object put( Context context, Request request, Response responseObject payload )
        throws ResourceException
    {
        LogConfigResourceResponse requestResource = (LogConfigResourceResponsepayload;
        if ( requestResource == null )
        {
            throw new ResourceException( Status.CLIENT_ERROR_BAD_REQUEST );
        }
        try
        {
            LogConfigResource data = requestResource.getData();
            
            DefaultLogConfiguration configuration = new DefaultLogConfiguration();
            
            configuration.setRootLoggerLeveldata.getRootLoggerLevel() );
            configuration.setRootLoggerAppendersdata.getRootLoggerAppenders() );
            configuration.setFileAppenderLocationdata.getFileAppenderLocation() );
            configuration.setFileAppenderPatterndata.getFileAppenderPattern() );
            .setConfigurationconfiguration );
            LogConfigResourceResponse responseResource = new LogConfigResourceResponse();
            responseResource.setDatadata );
            return responseResource;
        }
        catch ( IOException e )
        {
            getLogger().warn"Could not set log configuration!"e );
            throw new ResourceException( Status.SERVER_ERROR_INTERNAL );
        }
    }
    
New to GrepCode? Check out our FAQ X