[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/APIJSON/APIJSON/main/src/main/java/apijson/JSONCreator.java [Back]  [Original]

/*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.Collection;
import java.util.List;
import java.util.Map;

/**JSON
 * @author Lemon
 */
public interface JSONCreator {
	
	@NotNull
    M createJSONObject();

    @NotNull
    default M createJSONObject(String key, Object value) {
        M obj = createJSONObject();
        obj.put(key, value);
        return obj;
    }

    @NotNull
    default M createJSONObject(Map map) {
        M obj = createJSONObject();
        if (map != null && ! map.isEmpty()) {
            obj.putAll(map);
        }
        return obj;
    }

	@NotNull
    L createJSONArray();

    @NotNull
    default L createJSONArray(Object obj){
        L arr = createJSONArray();
        arr.add(obj);
        return arr;
    }

    @NotNull
    default L createJSONArray(Collection list){
        L arr = createJSONArray();
        if (list != null && ! list.isEmpty()) {
            arr.addAll(list);
        }
        return arr;
    }
}

Web Proxy Viewer  |  New URL  |  Original Page