CIM naming ---------- As you can see, the nice names "configs", "devices", "routes", etc. are gone. Welcome to CIM! WORK-IN-PROGRESS: the REST aspect is not covered now, because the way CIM composes the data using subclassed associations makes it hard to figure out, and below are only guesses. A Confusingly Irritating Model :-) note to XML: - I use the usual ruby attributes like type=array/boolean. - Additionally I use <Foo value='80'>HTTP> to combine CIM enumerations (Value+ValueMap) - CIM is CamelCase. We may want to adapt_it_to_ruby CIM_NetworkPort means "network interface", not a "(TCP/IP )protocol port" (hierarchy: EthernetPort: NetworkPort: LogicalPort: LogicalDevice: EnabledLogicalElement: LogicalElement: ManagedSystemElement: ManagedElement) /NetworkPort/eth0 <EthernetPort> <!-- LogicalDevice --> <DeviceID>eth0> <!-- key --> <!-- NetworkPort --> <NetworkAddresses> <item>112233445566> <item>aabbccffeeff> > <LinkTechnology value='2'>Ethernet> <!-- EthernetPort --> <Capabilities type='array'> <item value='3'>WakeOnLan> > <EnabledCapabilities type='array' /> <!-- empty --> > LogicalDevice has a m:n Realizes association with Core:PhysicalElement, not sure how to model it in REST <PhysicalElement> <Manufacturer>Realtek Semiconductor Co., Ltd.> <Model>RTL-8169 Gigabit Ethernet> ... > IPProtocolEndpoint: Core:ProtocolEndpoint: <IPProtocolEndpoint> <IPv4Address>1.2.3.4> <SubnetMask>255.255.255.0> <AddressOrigin value="4">DHCP> <!-- "Static", "DHCP", "BOOTP", "IPv4 Link Local", "DHCPv6", "IPv6AutoConfig" --> > <IPProtocolEndpoint> <IPv6Address>1:2:3::4> <PrefixLength>64> <AddressOrigin value="8">IPv6AutoConfig> > interface configuration ----------------------- (IPAssignmentSettingData : SettingData: ManagedElement) /IPAssignmentSettingData/eth0 <IPAssignmentSettingData> <AddressOrigin value='4'>DHCP> > /IPAssignmentSettingData/eth0 <StaticIPAssignmentSettingData> <AddressOrigin value='3'>Static> <IPv4Address>10.20.30.40> <SubnetMask>255.255.0.0> <GatewayIPv4Address>10.20.7.254> <!-- default route --> > (WiFi is too new (Jun 2009): http://www.dmtf.org/standards/published_documents/DSP1088_1.0.0.pdf ) the Association ElementSettingData connects ManagedElement and SettingData (compare NetworkManager's ActiveConnection) <ElementSettingData> <ManagedElement>/IPProtocolEndpoint/1> <SettingData>/IPAssignmentSettingData/eth0> <IsDefault value="1">Is Default> <!--0:Unknown, 2:Is Not Default --> <IsCurrent value="1">Is Current> > TODO! how is all this bound to /NetworkPort/eth0? SAPSAPDependency? ActiveConnection? resolver (DNS client) configuration ----------------------------------- (NETCONFIG_DNS_STATIC_SERVERS) /DNSSettingData <DNSSettingData> <AddressOrigin value='3'>Static> <DNSServerAddresses type='array'> <!-- CIM: string[] --> <item>10.20.0.2> <item>10.20.0.8> > > (NETCONFIG_DNS_STATIC_SEARCHLIST) /DNSGeneralSettingData <DNSGeneralSettingData> <AddressOrigin value='3'>Static> <AppendParentSuffixes type="boolean">true> <DNSSuffixesToAppend type="array"> <item>suse.cz> <item>suse.de> > > (BTW it seems that netconfig does not enable dissassociating AddressOrigin for these two) /DNSSettingData <DNSSettingData> <AddressOrigin value='4'>DHCP> > /DNSGeneralSettingData <DNSGeneralSettingData> <AddressOrigin value='4'>DHCP> > (TODO: Virtual Devices, in case you haven't had enough) -- Martin Vidner, YaST developer http://en.opensuse.org/User:Mvidner Kuracke oddeleni v restauraci je jako fekalni oddeleni v bazenu -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org