當前位置: 首頁>>代碼示例>>Java>>正文


Java HttpMethod.getPath方法代碼示例

本文整理匯總了Java中org.apache.commons.httpclient.HttpMethod.getPath方法的典型用法代碼示例。如果您正苦於以下問題:Java HttpMethod.getPath方法的具體用法?Java HttpMethod.getPath怎麽用?Java HttpMethod.getPath使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.apache.commons.httpclient.HttpMethod的用法示例。


在下文中一共展示了HttpMethod.getPath方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: executeHttpMethodUnauthenticated

import org.apache.commons.httpclient.HttpMethod; //導入方法依賴的package包/類
public <T extends Object> T executeHttpMethodUnauthenticated(HttpMethod method, HttpRequestCallback<T> callback)
{
    try
    {
        // Try executing the method
        httpProvider.getHttpClient().executeMethod(null, method);
        if (callback != null)
        {
            return callback.onCallSuccess(method);
        }
        return null;
    }
    catch (Throwable t)
    {
        boolean handled = false;
        // Delegate to callback to handle error. If not available, throw exception
        if (callback != null)
        {
            handled = callback.onError(method, t);
        }

        if (!handled)
        {
            throw new RuntimeException("Error while executing an un-authenticated HTTP-call (" + method.getPath() + ")", t);
        }
        return null;

    }
    finally
    {
        method.releaseConnection();
    }
}
 
開發者ID:Alfresco,項目名稱:alfresco-remote-api,代碼行數:34,代碼來源:AuthenticatedHttp.java

示例2: executeWithBasicAuthentication

import org.apache.commons.httpclient.HttpMethod; //導入方法依賴的package包/類
/**
 * Execute the given method, authenticated as the given user using Basic Authentication.
 * @param method method to execute
 * @param userName name of user to authenticate (note: if null then attempts to run with no authentication - eq. Quick/Shared Link test)
 * @param callback called after http-call is executed. When callback returns, the 
 *  response stream is closed, so all respose-related operations should be done in the callback. Can be null.
 * @return result returned by the callback or null if no callback is given.
 */
private <T extends Object> T executeWithBasicAuthentication(HttpMethod method, String userName, String password, HttpRequestCallback<T> callback)
{
    try
    {
        HttpState state = new HttpState();

        if (userName != null)
        {
            state.setCredentials(
                    new AuthScope(null, AuthScope.ANY_PORT),
                    new UsernamePasswordCredentials(userName, password));
        }
        
        httpProvider.getHttpClient().executeMethod(null, method, state);
        
        if(callback != null)
        {
            return callback.onCallSuccess(method);
        }
        
        // No callback used, return null
        return null;
    }
    catch(Throwable t)
    {
        boolean handled = false;
        
        // Delegate to callback to handle error. If not available, throw exception
        if(callback != null)
        {
            handled = callback.onError(method, t);
        }
        
        if(!handled)
        {
            throw new RuntimeException("Error while executing HTTP-call (" + method.getPath() +")", t);
        }
        
        return null;
    }
    finally
    {
        method.releaseConnection();
    }
}
 
開發者ID:Alfresco,項目名稱:alfresco-remote-api,代碼行數:54,代碼來源:AuthenticatedHttp.java

示例3: executeWithTicketAuthentication

import org.apache.commons.httpclient.HttpMethod; //導入方法依賴的package包/類
/**
 * Execute the given method, authenticated as the given user using ticket-based authentication.
 * @param method method to execute
 * @param userName name of user to authenticate
 * @return status-code resulting from the request
 */
private <T extends Object> T executeWithTicketAuthentication(HttpMethod method, String userName, String password, HttpRequestCallback<T> callback)
{
    String ticket = authDetailProvider.getTicketForUser(userName);
    if(ticket == null)
    {
       ticket = fetchLoginTicket(userName, password);
       authDetailProvider.updateTicketForUser(userName, ticket);
    }
    
    
    
    try
    {
        HttpState state = applyTicketToMethod(method, ticket);
        
       // Try executing the method
        int result = httpProvider.getHttpClient().executeMethod(null, method, state);
        
        if(result == HttpStatus.SC_UNAUTHORIZED || result == HttpStatus.SC_FORBIDDEN)
        {
            method.releaseConnection();
            if(!method.validate())
            {
                throw new RuntimeException("Ticket re-authentication failed for user " + userName + " (HTTPMethod not reusable)");
            }
            // Fetch new ticket, store and apply to HttpMethod
            ticket = fetchLoginTicket(userName, userName);
            authDetailProvider.updateTicketForUser(userName, ticket);
            
            state = applyTicketToMethod(method, ticket);
            
            // Run method agian with new ticket
            result = httpProvider.getHttpClient().executeMethod(null, method, state);
        }
       
        if(callback != null)
        {
            return callback.onCallSuccess(method);
        }
        
        return null;
    }
    catch(Throwable t)
    {
        boolean handled = false;
        // Delegate to callback to handle error. If not available, throw exception
        if(callback != null)
        {
            handled = callback.onError(method, t);
        }
        
        if(!handled)
        {
            throw new RuntimeException("Error while executing HTTP-call (" + method.getPath() +")", t);
        }
        return null;
        
    }
    finally
    {
        method.releaseConnection();
    }
    
}
 
開發者ID:Alfresco,項目名稱:alfresco-remote-api,代碼行數:71,代碼來源:AuthenticatedHttp.java


注:本文中的org.apache.commons.httpclient.HttpMethod.getPath方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。