View Javadoc

1   /**
2    *
3    * Copyright (C) 2011 Cloud Conscious, LLC. <info@cloudconscious.com>
4    *
5    * ====================================================================
6    * Licensed under the Apache License, Version 2.0 (the "License");
7    * you may not use this file except in compliance with the License.
8    * You may obtain a copy of the License at
9    *
10   * http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing, software
13   * distributed under the License is distributed on an "AS IS" BASIS,
14   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15   * See the License for the specific language governing permissions and
16   * limitations under the License.
17   * ====================================================================
18   */
19  package org.jclouds.vcloud.terremark;
20  
21  import static org.jclouds.Constants.PROPERTY_API_VERSION;
22  import static org.jclouds.Constants.PROPERTY_ENDPOINT;
23  import static org.jclouds.Constants.PROPERTY_ISO3166_CODES;
24  import static org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.PROPERTY_PUSH_INIT_SCRIPT_VIA_SFTP;
25  import static org.jclouds.vcloud.reference.VCloudConstants.PROPERTY_VCLOUD_TIMEOUT_TASK_COMPLETED;
26  import static org.jclouds.vcloud.terremark.reference.TerremarkConstants.PROPERTY_TERREMARK_EXTENSION_NAME;
27  import static org.jclouds.vcloud.terremark.reference.TerremarkConstants.PROPERTY_TERREMARK_EXTENSION_VERSION;
28  
29  import java.util.Properties;
30  
31  /**
32   * Builds properties used in Terremark VCloud Clients
33   * 
34   * @author Adrian Cole
35   */
36  public class TerremarkECloudPropertiesBuilder extends TerremarkVCloudPropertiesBuilder {
37     @Override
38     protected Properties defaultProperties() {
39        Properties properties = super.defaultProperties();
40        properties.setProperty(PROPERTY_ISO3166_CODES, "US-FL,NL-NH");
41        properties.setProperty(PROPERTY_API_VERSION, "0.8b-ext2.7");
42        properties.setProperty(PROPERTY_ENDPOINT, "https://services.enterprisecloud.terremark.com/api");
43        properties.setProperty(PROPERTY_TERREMARK_EXTENSION_NAME, "eCloudExtensions");
44        properties.setProperty(PROPERTY_TERREMARK_EXTENSION_VERSION, "2.7");
45        // default for ubuntu
46        properties.setProperty(PROPERTY_VCLOUD_TIMEOUT_TASK_COMPLETED, 360l * 1000l + "");
47        // ubuntu image has a problem with sftp
48        properties.setProperty(PROPERTY_PUSH_INIT_SCRIPT_VIA_SFTP, "false");
49        return properties;
50     }
51  
52     public TerremarkECloudPropertiesBuilder(Properties properties) {
53        super(properties);
54     }
55  
56  }