package com.bocloud.cmp.provider.agile.network;

import com.bocloud.cmp.provider.SuperProvider;
import com.bocloud.common.model.BocloudResult;
import com.bocloud.nms.model.agile.AgileAclModel;
import com.bocloud.nms.model.agile.AgileAclRuleModel;

import java.util.List;

public interface AclProvider extends SuperProvider {
    default BocloudResult<List<AgileAclModel>> list() {
        return new BocloudResult<>(false, "need implement");
    }

    default BocloudResult<AgileAclModel> create(AgileAclModel model) {
        return new BocloudResult<>(false, "need implement");
    }

    default BocloudResult<AgileAclModel> modify(AgileAclModel model) {
        return new BocloudResult<>(false, "need implement");
    }

    default BocloudResult<AgileAclModel> detail(String aclUuid) {
        return new BocloudResult<>(false, "need implement");
    }

    default BocloudResult<?> remove(String aclUuid) {
        return new BocloudResult<>(false, "need implement");
    }

    default BocloudResult<AgileAclRuleModel> addAclRule(AgileAclRuleModel model) {
        return new BocloudResult<>(false, "need implement");
    }

    default BocloudResult<?> removeAclRule(String aclUuid, String aclRuleUuid) {
        return new BocloudResult<>(false, "need implement");
    }
}
