// Copyright (C) 2022 NHR@FAU, University Erlangen-Nuremberg. // All rights reserved. // Use of this source code is governed by a MIT-style // license that can be found in the LICENSE file. package main import ( "encoding/json" "io" "github.com/ClusterCockpit/cc-backend/pkg/schema" ) func DecodeJobData(r io.Reader) (*JobData, error) { var d JobData if err := json.NewDecoder(r).Decode(&d); err != nil { return nil, err } return &d, nil } func DecodeJobMeta(r io.Reader) (*JobMeta, error) { var d JobMeta if err := json.NewDecoder(r).Decode(&d); err != nil { return nil, err } return &d, nil } func DecodeCluster(r io.Reader) (*Cluster, error) { var c Cluster if err := json.NewDecoder(r).Decode(&c); err != nil { return nil, err } return &c, nil } func EncodeJobData(w io.Writer, d *schema.JobData) error { // Sanitize parameters if err := json.NewEncoder(w).Encode(d); err != nil { return err } return nil } func EncodeJobMeta(w io.Writer, d *schema.JobMeta) error { // Sanitize parameters if err := json.NewEncoder(w).Encode(d); err != nil { return err } return nil } func EncodeCluster(w io.Writer, c *schema.Cluster) error { // Sanitize parameters if err := json.NewEncoder(w).Encode(c); err != nil { return err } return nil }