/*Copyright (C) 2026 the APIJSON group. All rights reserved.
This source code is licensed under the Apache License Version 2.0.*/
package apijson;
import java.util.*;
/**use this class instead of com.alibaba.fastjson.JSONMap
* @author Lemon
* @see #put
* @see #puts
* @see #putsAll
*/
//default class JSONMap extends LinkedHashMap {
public interface JSONMap extends Map {
static final String TAG = "JSONMap";
// static public Map map = new LinkedHashMap();
///**ordered
// */
//default JSONMap() {
// super();
//}
///**transfer Object to JSONMap
// * @param object
// * @see {@link #JSONMap(Object)}
// */
//default JSONMap(Object object) {
// this();
// if (object instanceof Map) {
// @SuppressWarnings("unchecked")
// Map map = (Map) object;
// putAll(map);
// } else if (object != null) {
// String json = JSON.toJSONString(object);
// if (json != null) {
// Map map = JSON.parseObject(json);
// if (map != null) {
// putAll(map);
// }
// }
// }
//}
///**parse JSONMap with JSON String
// * @param json
// * @see {@link #JSONMap(String)}
// */
//default JSONMap(String json) {
// this();
// Map map = JSON.parseObject(json);
// if (map != null) {
// putAll(map);
// }
//}
///**transfer com.alibaba.fastjson.JSONMap to JSONMap
// * @param object
// * @see {@link #putsAll(Map entry : set) {
put(entry.getKey(), entry.getValue());
}
}
default String toJSONString() {
return JSON.toJSONString(this);
}
//@Override
//default int size() {
// return map.size();
//}
//
//@Override
//default boolean isEmpty() {
// return map.isEmpty();
//}
//
//@Override
//default boolean containsKey(Object key) {
// return map.containsKey(key);
//}
//
//@Override
//default boolean containsValue(Object value) {
// return map.containsValue(value);
//}
//
//@Override
//default Object get(Object key) {
// return map.get(key);
//}
//
//@Override
//default Object put(String key, Object value) {
// return map.put(key, value);
//}
//
//@Override
//default Object remove(Object key) {
// return map.remove(key);
//}
//@Override
//default void clear() {
// map.clear();
//}
//
//@Override
//default Set keySet() {
// return map.keySet();
//}
//
//@Override
//default Collection values() {
// return map.values();
//}
//
//@Override
//default Set entrySet() {
// return map.entrySet();
//}
//@Override
//default String toString() {
// return JSON.toJSONString(this);
//}
}