org.openstack4j.api.networking.ext.FirewallRuleService Maven / Gradle / Ivy
package org.openstack4j.api.networking.ext;
import java.util.List;
import java.util.Map;
import org.openstack4j.common.RestService;
import org.openstack4j.model.common.ActionResponse;
import org.openstack4j.model.network.ext.FirewallRule;
import org.openstack4j.model.network.ext.FirewallRuleUpdate;
/**
* Networking (Neutron) FwaaS FirewallRule Rule Extension API
*
* Represents a collection of attributes like ports, ip addresses which define match
* criteria and action (allow, or deny) that needs to be taken on the matched data traffic.
*
*
* The FWaaS extension provides OpenStack users with the ability to deploy firewalls to protect their networks. The FWaaS extension enables you to:
*
* - Apply FirewallRule rules on traffic entering and leaving tenant networks.
* - Support for applying tcp, udp, icmp, or protocol agnostic rules.
* - Creation and sharing of FirewallRule policies which hold an ordered collection of the FirewallRule rules.
* - Audit FirewallRule rules and policies.
*
*
*
* @author Vishvesh Deshmukh
*/
public interface FirewallRuleService extends RestService {
/**
* List all FirewallRules(s) that the current tenant has access to.
*
* @return list of all FirewallRules(s)
*/
List extends FirewallRule> list();
/**
* Returns list of FirewallRules(s) filtered by parameters.
*
* @param filteringParams map (name, value) of filtering parameters
* @return filtered list of FirewallRules(s)
*/
List extends FirewallRule> list(Map filteringParams);
/**
* Get the specified FirewallRule by ID
*
* @param firewallRuleId the FirewallRule identifier
* @return the FirewallRule or null if not found
*/
FirewallRule get(String firewallRuleId);
/**
* Delete the specified FirewallRule by ID
* @param firewallRuleId the FirewallRule identifier
* @return the action response
*/
ActionResponse delete(String firewallRuleId);
/**
* Create a FirewallRule
* @param firewallRule
* @return FirewallRule
*/
FirewallRule create(FirewallRule firewallRule);
/**
* Update a FirewallRule
* @param firewallRuleId the FirewallRule identifier
* @param firewallRuleUpdate firewallRuleUpdate
* @return FirewallRule
*/
FirewallRule update(String firewallRuleId, FirewallRuleUpdate firewallRuleUpdate);
}