Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2010-2013, CloudBees Inc.
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *     http://www.apache.org/licenses/LICENSE-2.0
   *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 package com.cloudbees.sdk.commands.app;
 
 import  com.cloudbees.sdk.cli.BeesCommand;
 import  com.cloudbees.sdk.cli.CLICommand;
 import  com.cloudbees.sdk.utils.Helper;
 

Author(s):
Fabian Donze
 
 @BeesCommand(group="Application", description = "Get an application snapshot url")
 @CLICommand("app:snapshot:url")
     private String appid;
 
     private String account;
 
     public ApplicationSnapshotUrl() {
         super();
     }
 
     public void setAppid(String appid) {
         this. = appid;
     }
 
     protected String getAppid() {
         return ;
     }
 
     public void setAccount(String account) {
         this. = account;
     }
 
 
     @Override
     protected boolean preParseCommandLine() {
         if (super.preParseCommandLine()) {
             addOption"a""appid"true"CloudBees application ID (if specified, this will return the active application snapshot url" );
             return true;
         }
         return false;
     }
 
     protected String getAccount() throws IOException {
         if ( == null = getConfigProperties().getProperty("bees.project.app.domain");
         if ( == null = Helper.promptFor("Account name: "true);
         return ;
     }
 
     protected String getAppId() throws IOException
     {
         if ( == null || .equals("")) {
              = AppHelper.getArchiveApplicationId();
         }
 
         if ( == null || .equals(""))
              = Helper.promptForAppId();
 
         if ( == null || .equals(""))
             throw new IllegalArgumentException("No application id specified");
 
         String[] appIdParts = .split("/");
         if (appIdParts.length < 2) {
             String defaultAppDomain = getAccount();
             if (defaultAppDomain != null && !defaultAppDomain.equals("")) {
                  = defaultAppDomain + "/" + ;
             } else {
                 throw new RuntimeException("default app account could not be determined, appid needs to be fully-qualified ");
             }
         }
         return ;
     }
 
     protected AppClient getAppClient(String appIdthrows IOException {
         AppClient client = getBeesClient(AppClient.class);
         AccountRegionInfo endPoint = AppHelper.getApplicationRegionInfo(clientappId);
         if (endPoint != null) {
             String apiUrl = endPoint.getSettings().get("api.url");
             BeesClientConfiguration clientConfiguration = client.getBeesClientConfiguration();
             String currentApiUrl = clientConfiguration.getServerApiUrl();
            if (!currentApiUrl.equalsIgnoreCase(apiUrl)) {
                ..println(String.format("WARNING: Application [%s] defined in the [%s] region, using [%s] API end point",
                        appIdendPoint.getName(), endPoint.getName()));
                clientConfiguration.setServerApiUrl(apiUrl);
                client = new AppClient(clientConfiguration);
                client.setVerbose(isVerbose());
            }
        }
        return client;
    }
    @Override
    protected boolean execute() throws Exception {
        MessageResponse res;
        if ( != null) {
            String appID = getAppId();
            AppClient client = getAppClient(appID);
            res = client.applicationSnapshotUrl(appIDnull);
        } else {
            AppClient client = getBeesClient(AppClient.class);
            String snapshotId = getSnapshotId();
            res = client.applicationSnapshotUrl(nullsnapshotId);
        }
        if (isTextOutput()) {
            ..println(res.getMessage());
        } else
            printOutput(resMessageResponse.class);
        return true;
    }
New to GrepCode? Check out our FAQ X