| /** |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you 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 backtype.storm.utils; |
| |
| import java.nio.ByteBuffer; |
| import java.util.List; |
| import java.util.Map; |
| |
| import org.apache.heron.common.basics.TypeUtils; |
| |
| // import org.json.simple.JSONValue; |
| |
| public final class Utils { |
| public static final String DEFAULT_STREAM_ID = |
| org.apache.heron.api.utils.Utils.DEFAULT_STREAM_ID; |
| |
| private Utils() { |
| } |
| |
| public static Object newInstance(String klass) { |
| try { |
| Class<?> c = Class.forName(klass); |
| return c.newInstance(); |
| } catch (ClassNotFoundException | InstantiationException | IllegalAccessException e) { |
| throw new RuntimeException("Failed to create instance for class: " + klass, e); |
| } |
| } |
| |
| public static List<Object> tuple(Object... values) { |
| return org.apache.heron.api.utils.Utils.tuple(values); |
| } |
| |
| public static void sleep(long millis) { |
| org.apache.heron.api.utils.Utils.sleep(millis); |
| } |
| |
| /* |
| public static boolean isValidConf(Map<String, Object> stormConf) { |
| return normalizeConf(stormConf).equals( |
| normalizeConf((Map) JSONValue.parse(JSONValue.toJSONString(stormConf)))); |
| } |
| */ |
| |
| public static Map<String, String> readCommandLineOpts() { |
| return org.apache.heron.api.utils.Utils.readCommandLineOpts(); |
| } |
| |
| /* |
| private static Object normalizeConf(Object conf) { |
| if(conf==null) return new HashMap(); |
| if(conf instanceof Map) { |
| Map confMap = new HashMap((Map) conf); |
| for(Object key: confMap.keySet()) { |
| Object val = confMap.get(key); |
| confMap.put(key, normalizeConf(val)); |
| } |
| return confMap; |
| } else if(conf instanceof List) { |
| List confList = new ArrayList((List) conf); |
| for(int i=0; i<confList.size(); i++) { |
| Object val = confList.get(i); |
| confList.set(i, normalizeConf(val)); |
| } |
| return confList; |
| } else if (conf instanceof Integer) { |
| return ((Integer) conf).longValue(); |
| } else if(conf instanceof Float) { |
| return ((Float) conf).doubleValue(); |
| } else { |
| return conf; |
| } |
| } |
| */ |
| |
| public static byte[] serialize(Object obj) { |
| return org.apache.heron.api.utils.Utils.serialize(obj); |
| } |
| |
| public static Object deserialize(byte[] serialized) { |
| return org.apache.heron.api.utils.Utils.deserialize(serialized); |
| } |
| |
| public static Integer getInt(Object o) { |
| return TypeUtils.getInteger(o); |
| } |
| |
| public static boolean getBoolean(Object o, boolean defaultValue) { |
| if (o == null) { |
| return defaultValue; |
| } else { |
| return TypeUtils.getBoolean(o); |
| } |
| } |
| |
| public static byte[] toByteArray(ByteBuffer buffer) { |
| return org.apache.heron.api.utils.Utils.toByteArray(buffer); |
| } |
| |
| public static <S, T> T get(Map<S, T> m, S key, T defaultValue) { |
| return org.apache.heron.api.utils.Utils.get(m, key, defaultValue); |
| } |
| } |