class ExtensionDescriptor {

    private List<String> exportedPackages;

    private List<String> exportedArtifacts;

    ExtensionDescriptor() {
        // hide constructor
    }

    public List<String> getExportedPackages() {
        if (exportedPackages == null) {
            exportedPackages = new ArrayList<>();
        }

        return exportedPackages;
    }

    public void setExportedPackages(List<String> exportedPackages) {<FILL_FUNCTION_BODY>}

    public List<String> getExportedArtifacts() {
        if (exportedArtifacts == null) {
            exportedArtifacts = new ArrayList<>();
        }

        return exportedArtifacts;
    }

    public void setExportedArtifacts(List<String> exportedArtifacts) {
        if (exportedArtifacts == null) {
            this.exportedArtifacts = null;
        } else {
            this.exportedArtifacts = new ArrayList<>(exportedArtifacts);
        }
    }
}

        if (exportedPackages == null) {
            this.exportedPackages = null;
        } else {
            this.exportedPackages = new ArrayList<>(exportedPackages);
        }
    
<no_super_class>