/*-
 * ~~~~~~licensing~~~~~~
 * connector-impl
 * ==========
 * Copyright (C) 2020 - 2021 EmDev LLC
 * ==========
 * 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
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * 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.
 * ~~~~~~/licensing~~~~~~
 */
package ru.entaxy.esb.system.connector.impl;

import com.sun.istack.NotNull;
import ru.entaxy.esb.system.connector.entity.Connector;
import ru.entaxy.esb.system.jpa.entity.System;
import ru.entaxy.esb.system.management.bundle.jpa.entity.BundleEntity;

import java.util.List;

public interface ConnectorService {

    List<Connector> getListConnector();

    Connector getConnectorByName(String name);

    Connector getConnectorByName(String systemUuid, String templateName);

    void removeConnector(@NotNull Connector connector);

    Connector saveOrUpdate(Connector connector);

    Connector addConnector(System system, Connector connector);

    Connector setBundleEntity(Connector connector, BundleEntity bundleEntity);
}
