|
5 | 5 | import java.util.Map; |
6 | 6 | import java.util.concurrent.ConcurrentHashMap; |
7 | 7 |
|
| 8 | +import io.vertx.core.impl.logging.Logger; |
8 | 9 | import picoded.core.conv.ConvertJSON; |
9 | 10 | import picoded.core.struct.GenericConvertHashMap; |
10 | 11 | import picoded.core.struct.GenericConvertList; |
@@ -48,16 +49,15 @@ public class ProviderConfig { |
48 | 49 | // |
49 | 50 | //-------------------------------------------------------------------------- |
50 | 51 |
|
| 52 | + // Logger to use, for config file warnings |
| 53 | + private static final Logger LOGGER = Logger.getLogger(ProviderConfig.class.getName()); |
| 54 | + |
51 | 55 | /** |
52 | 56 | * Load the provider config with provider list |
53 | 57 | **/ |
54 | 58 | public ProviderConfig(List<Object> inConfigList) { |
55 | | - System.out.println("!! Setting up ProviderConfig"); |
56 | | - |
57 | | - // The variables are intentionally initialized here inside the constructor |
58 | 59 | providerConfigMap = new HashMap<>(); |
59 | 60 | providerStackMap = new ConcurrentHashMap<>(); |
60 | | - |
61 | 61 | loadConfigArray(inConfigList); |
62 | 62 | } |
63 | 63 |
|
@@ -134,62 +134,41 @@ protected GenericConvertMap<String, Object> getStackConfig(String name) { |
134 | 134 | * @return the stack provider if found |
135 | 135 | */ |
136 | 136 | public CoreStack getProviderStack(String name) { |
137 | | - System.out.println("!! GET getProviderStack : "+name); |
138 | | - |
139 | 137 | // Get and return from cache if found |
140 | 138 | CoreStack cache = providerStackMap.get(name); |
141 | 139 | if (cache != null) { |
142 | | - System.out.println("!! CACHE HIT 1 getProviderStack : "+name); |
143 | 140 | return cache; |
144 | 141 | } |
145 | 142 |
|
146 | 143 | synchronized (this) { |
147 | | - System.out.println("!! THREAD LOCK getProviderStack : "+name); |
148 | 144 | // Check the cache again (avoid race condition) |
149 | 145 | cache = providerStackMap.get(name); |
150 | 146 | if (cache != null) { |
151 | | - System.out.println("!! CACHE HIT 2 getProviderStack : "+name); |
152 | 147 | return cache; |
153 | 148 | } |
154 | 149 |
|
| 150 | + // Log the setup |
| 151 | + String type = providerConfig.getString("type"); |
| 152 | + LOGGER.info("Setting DStack provider backend : "+name+" ("+type+")"); |
| 153 | + |
155 | 154 | // Cache not found, get config to initialize a new stack |
156 | 155 | GenericConvertMap<String, Object> providerConfig = getStackConfig(name); |
157 | 156 | if (providerConfig == null) { |
158 | 157 | throw new IllegalArgumentException("Unknown provider name, config not found : " + name); |
159 | 158 | } |
160 | 159 |
|
161 | | - // Logging for debugging issue |
162 | | - System.out.println("!! Initializing getProviderStack : "+name); |
163 | | - System.out.println("!! providerStackMap ptr : "+providerStackMap); |
164 | | - |
165 | 160 | // Initialization of stack and store into cache |
166 | 161 | try { |
167 | | - cache = initStack(providerConfig.getString("type"), providerConfig); |
| 162 | + cache = initStack(type, providerConfig); |
168 | 163 | } catch(Exception e) { |
169 | | - System.err.println(e.getMessage()); |
170 | | - System.err.println(e.getStackTrace()); |
| 164 | + // Log the error, as this is easily missed into an API error |
| 165 | + LOGGER.error("Error while setting DStack provider : "+name+" ("+type+")", e); |
171 | 166 | throw new RuntimeException(e); |
172 | 167 | } |
173 | 168 |
|
174 | | - // Null safety check |
175 | | - if( cache == null ) { |
176 | | - System.out.println("!! initialized stack is null : "+name); |
177 | | - throw new RuntimeException("Unexpected NULL provider stack was initialized"); |
178 | | - } |
179 | | - |
180 | | - |
181 | 169 | // Save it into cache |
182 | 170 | providerStackMap.put(name, cache); |
183 | 171 |
|
184 | | - // Lets do a GET validation, I dunno why im doing this |
185 | | - if( providerStackMap.get(name) != cache ) { |
186 | | - System.out.println("!! Failed GET after PUT : "+name); |
187 | | - throw new RuntimeException("Failed GET after PUT safety test"); |
188 | | - } |
189 | | - |
190 | | - // Logically this should only happen ONCE ! |
191 | | - System.out.println("!! Returning Initialized getProviderStack : "+name); |
192 | | - |
193 | 172 | // Return result |
194 | 173 | return cache; |
195 | 174 | } |
|
0 commit comments