Java Object Networking Selfip
Problem this snippet solves:
This Java class will wrap the iControl Networking::SelfIP interface to make it look like an object.
This class is part of the "Java iControl Objects" series of Articles on DevCentral. This class creates a Networking::SelfIP object and allows a developer to interact with the iControl Networking::SelfIP API methods in the context of using an object.
Code :
package iControl.Objects.Networking;
import iControl.Objects.System.Service;
public class SelfIP {
private iControl.Interfaces _interfaces = null;
private String _address = null;
private String _netmask = null;
private iControl.CommonEnabledState _floating_state = null;
private long _unit_id = -1;
private String _vlan = null;
//-----------------------------------------------------------------------
// Member Accessors
//-----------------------------------------------------------------------
public iControl.Interfaces getInterfaces() { return _interfaces; }
public void setInterfaces(iControl.Interfaces interfaces) { _interfaces = interfaces; }
public String getAddress() { return _address; }
public void setAddress(String address) { _address = address; }
//-----------------------------------------------------------------------
// Constructors
//-----------------------------------------------------------------------
public SelfIP(iControl.Interfaces interfaces, String address)
{
_interfaces = interfaces;
_address = address;
}
protected void validateMembers() throws Exception
{
if ( (null == _interfaces) || (null == _address) )
{
throw new Exception("Invalid Pool Parameters");
}
}
//-----------------------------------------------------------------------
// Attribute Accessors
//-----------------------------------------------------------------------
// floating_state
public iControl.CommonEnabledState getFloatingState() throws Exception
{
if ( null == _floating_state )
{
validateMembers();
String [] self_ips = { _address };
iControl.CommonEnabledState [] states =
_interfaces.getNetworkingSelfIP().get_floating_state(self_ips);
_floating_state = states[0];
}
return _floating_state;
}
public void setFloatingState(iControl.CommonEnabledState state) throws Exception
{
validateMembers();
String [] self_ips = { _address };
iControl.CommonEnabledState [] states = { state };
_interfaces.getNetworkingSelfIP().set_floating_state(self_ips, states);
_floating_state = state;
}
// netmask
public String getNetmask() throws Exception
{
if ( null == _netmask )
{
validateMembers();
String [] self_ips = { _address };
String [] netmasks = _interfaces.getNetworkingSelfIP().get_netmask(self_ips);
_netmask = netmasks[0];
}
return _netmask;
}
public void setNetmask(String netmask) throws Exception
{
validateMembers();
String [] self_ips = { _address };
String [] netmasks = { netmask};
_interfaces.getNetworkingSelfIP().set_netmask(self_ips, netmasks);
_netmask = netmask;
}
// unit_id
public long getUnitId() throws Exception
{
if ( -1 == _unit_id )
{
validateMembers();
String [] self_ips = { _address };
long [] unit_ids = _interfaces.getNetworkingSelfIP().get_unit_id(self_ips);
_unit_id = unit_ids[0];
}
return _unit_id;
}
public void setUnitIdState(long unit_id) throws Exception
{
validateMembers();
String [] self_ips = { _address };
long [] unit_ids = { unit_id };
_interfaces.getNetworkingSelfIP().set_unit_id(self_ips, unit_ids);
_unit_id = unit_id;
}
// vlan
public String getVLAN() throws Exception
{
if ( null == _vlan )
{
validateMembers();
String [] self_ips = { _address };
String [] vlans = _interfaces.getNetworkingSelfIP().get_vlan(self_ips);
_vlan = vlans[0];
}
return _vlan;
}
public void setVLAN(String vlan) throws Exception
{
validateMembers();
String [] self_ips = { _address };
String [] vlans= { vlan };
_interfaces.getNetworkingSelfIP().set_vlan(self_ips, vlans);
_vlan = vlan;
}
//-----------------------------------------------------------------------
// Public Methods
//-----------------------------------------------------------------------
public void create(
String vlan,
String netmask,
long unit_id,
iControl.CommonEnabledState state
) throws Exception
{
validateMembers();
String [] self_ips = { _address };
String [] vlan_names = { vlan };
String [] netmasks = { netmask };
long [] unit_ids = { unit_id };
iControl.CommonEnabledState [] states = { state };
_interfaces.getNetworkingSelfIP().create(self_ips, vlan_names, netmasks, unit_ids, states);
_unit_id = unit_id;
_netmask = netmask;
_floating_state = state;
_vlan = vlan;
}
public void remove() throws Exception
{
validateMembers();
String [] self_ips = { _address };
_interfaces.getNetworkingSelfIP().delete_self_ip(self_ips);
}
public void syncProperties() throws Exception
{
validateMembers();
getFloatingState();
getNetmask();
getUnitId();
getVLAN();
}
//-----------------------------------------------------------------------
// Public Static Methods
//-----------------------------------------------------------------------
public static SelfIP [] getList(iControl.Interfaces interfaces) throws Exception
{
SelfIP [] selfips = null;
if ( null != interfaces )
{
String [] selfip_list = interfaces.getNetworkingSelfIP().get_list();
selfips = new SelfIP[selfip_list.length];
for(int i=0; iPublished Mar 08, 2015
Version 1.0CodeCentral_194
Cirrostratus
Joined May 05, 2019
CodeCentral_194
Cirrostratus
Joined May 05, 2019
No CommentsBe the first to comment