Java Script toMap(ScriptObjectMirror som, Class type)

Here you can find the source of toMap(ScriptObjectMirror som, Class type)

Description

to Map

License

Apache License

Declaration

public static <T> Map<String, T> toMap(ScriptObjectMirror som, Class<T> type) throws ScriptException 

Method Source Code

//package com.java2s;
/**/*from  ww w  .j av  a 2 s. co m*/
 * Copyright 2014-2016 Emmanuel Keller / QWAZR
 * <p>
 * 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
 * <p>
 * http://www.apache.org/licenses/LICENSE-2.0
 * <p>
 * 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.
 */

import jdk.nashorn.api.scripting.ScriptObjectMirror;

import java.util.LinkedHashMap;

import java.util.Map;

import javax.script.ScriptException;

public class Main {
    public static <T> Map<String, T> toMap(ScriptObjectMirror som, Class<T> type) throws ScriptException {
        if (som == null)
            return null;
        if (som.isArray())
            throw new ScriptException("The JS object is an array");

        Map<String, T> map = new LinkedHashMap<String, T>();
        if (som.isEmpty())
            return map;
        som.forEach((s, o) -> map.put(s, ((ScriptObjectMirror) o).to(type)));
        return map;
    }
}

Related

  1. getScript(String name)
  2. getScriptCompileMsg(ScriptException ex)
  3. getSpParamOfWeiboLogin(String pwd, String servicetime, String nonce)
  4. removeScript(String name)
  5. runScript(final String script)
  6. toSci(BigDecimal bd, int sf)