1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.jclouds.rimuhosting.miro;
20
21 import static org.jclouds.Constants.PROPERTY_API_VERSION;
22 import static org.jclouds.Constants.PROPERTY_CONNECTION_TIMEOUT;
23 import static org.jclouds.Constants.PROPERTY_ENDPOINT;
24 import static org.jclouds.Constants.PROPERTY_ISO3166_CODES;
25 import static org.jclouds.Constants.PROPERTY_SO_TIMEOUT;
26 import static org.jclouds.location.reference.LocationConstants.ISO3166_CODES;
27 import static org.jclouds.location.reference.LocationConstants.PROPERTY_ZONE;
28 import static org.jclouds.location.reference.LocationConstants.PROPERTY_ZONES;
29 import static org.jclouds.rimuhosting.miro.reference.RimuHostingConstants.PROPERTY_RIMUHOSTING_DEFAULT_DC;
30
31 import java.util.Properties;
32
33 import org.jclouds.PropertiesBuilder;
34 import org.jclouds.compute.reference.ComputeServiceConstants;
35 import org.jclouds.concurrent.Timeout;
36
37
38
39
40
41
42 public class RimuHostingPropertiesBuilder extends PropertiesBuilder {
43 @Override
44 protected Properties defaultProperties() {
45 Properties properties = super.defaultProperties();
46 properties.setProperty(PROPERTY_ZONES, "DCAUCKLAND,DCLONDON,DCDALLAS,DCSYDNEY");
47 properties.setProperty(PROPERTY_ISO3166_CODES, "NZ-AUK,US-TX,AU-NSW,GB-LND");
48 properties.setProperty(PROPERTY_ZONE + ".DCAUCKLAND." + ISO3166_CODES, "NZ-AUK");
49 properties.setProperty(PROPERTY_ZONE + ".DCLONDON." + ISO3166_CODES, "GB-LND");
50 properties.setProperty(PROPERTY_ZONE + ".DCDALLAS." + ISO3166_CODES, "US-TX");
51 properties.setProperty(PROPERTY_ZONE + ".DCSYDNEY." + ISO3166_CODES, "AU-NSW");
52 properties.setProperty(PROPERTY_API_VERSION, "TODO");
53 properties.setProperty(PROPERTY_ENDPOINT, "https://api.rimuhosting.com/r");
54 properties.setProperty(PROPERTY_RIMUHOSTING_DEFAULT_DC, "DCDALLAS");
55 Timeout timeout = RimuHostingClient.class.getAnnotation(Timeout.class);
56 long timeoutMillis = timeout.timeUnit().toMillis(timeout.duration());
57 properties.setProperty(PROPERTY_SO_TIMEOUT, timeoutMillis + "");
58 properties.setProperty(PROPERTY_CONNECTION_TIMEOUT, timeoutMillis + "");
59 properties.setProperty(ComputeServiceConstants.PROPERTY_TIMEOUT_NODE_TERMINATED, 60 * 1000 + "");
60 return properties;
61 }
62
63 public RimuHostingPropertiesBuilder(Properties properties) {
64 super(properties);
65 }
66 }