diff --git a/o11nplugin-contrail-config/buildNumber.properties b/o11nplugin-contrail-config/buildNumber.properties index ef695efb..957d4537 100644 --- a/o11nplugin-contrail-config/buildNumber.properties +++ b/o11nplugin-contrail-config/buildNumber.properties @@ -1,3 +1,3 @@ #maven.buildNumber.plugin properties file -#Wed Jun 06 17:32:42 CEST 2018 -buildNumber=1423 +#Fri Jun 08 13:56:38 CEST 2018 +buildNumber=1434 diff --git a/o11nplugin-contrail-config/src/main/kotlin/net/juniper/contrail/vro/config/DisplayConfig.kt b/o11nplugin-contrail-config/src/main/kotlin/net/juniper/contrail/vro/config/DisplayConfig.kt index 9e08d76c..c466a681 100644 --- a/o11nplugin-contrail-config/src/main/kotlin/net/juniper/contrail/vro/config/DisplayConfig.kt +++ b/o11nplugin-contrail-config/src/main/kotlin/net/juniper/contrail/vro/config/DisplayConfig.kt @@ -4,6 +4,8 @@ package net.juniper.contrail.vro.config +import net.juniper.contrail.api.types.* // ktlint-disable no-wildcard-imports + val hiddenProperties = setOf( "parentUuid", "parentType", @@ -29,9 +31,41 @@ val String.displayedName get() = when (this) { } val String.position get() = - cleanedDisplayedProperty.propertyPosition + cleanedDisplayedProperty.propertyOrder + +private val orderList = listOf( + VirtualNetwork::class.java, + NetworkIpam::class.java, + FloatingIpPool::class.java, + VirtualMachineInterface::class.java, + + NetworkPolicy::class.java, + SecurityGroup::class.java, + + ApplicationPolicySet::class.java, + FirewallPolicy::class.java, + FirewallRule::class.java, + ServiceGroup::class.java, + AddressGroup::class.java, + + Project::class.java, + PolicyManagement::class.java, + Tag::class.java, + ServiceTemplate::class.java, + + ServiceInstance::class.java, + PortTuple::class.java, + ServiceHealthCheck::class.java +) + +private val orders = orderList.asSequence() + .mapIndexed { index, clazz -> Pair(clazz, index) } + .associateBy({ it.first }, { it.second }) + +val Class<*>.order get() = + orders[this] ?: orders.size -private val String.propertyPosition get() = when (this) { +private val String.propertyOrder get() = when (this) { "name" -> 0 "displayName" -> 1 "uuid" -> 2 diff --git a/o11nplugin-contrail-generator/src/main/kotlin/net/juniper/contrail/vro/generator/model/ModelGenerator.kt b/o11nplugin-contrail-generator/src/main/kotlin/net/juniper/contrail/vro/generator/model/ModelGenerator.kt index 568c99e8..e17043d2 100644 --- a/o11nplugin-contrail-generator/src/main/kotlin/net/juniper/contrail/vro/generator/model/ModelGenerator.kt +++ b/o11nplugin-contrail-generator/src/main/kotlin/net/juniper/contrail/vro/generator/model/ModelGenerator.kt @@ -9,6 +9,7 @@ import net.juniper.contrail.vro.config.PropertyClass import net.juniper.contrail.vro.config.div import net.juniper.contrail.vro.config.ProjectInfo import net.juniper.contrail.vro.config.isRootClass +import net.juniper.contrail.vro.config.order import net.juniper.contrail.vro.generator.generatedPackageName import net.juniper.contrail.vro.generator.generatedSourcesRoot import net.juniper.contrail.vro.generator.templatesInClassPath @@ -24,7 +25,8 @@ fun generateModel( val relations = definition.relations val forwardRelations = definition.forwardRelations val propertyRelations = definition.propertyRelations - val rootClasses = modelClasses.filter { it.isRootClass } + val rootClasses = modelClasses.asSequence() + .filter { it.isRootClass }.sortedBy { it.order }.toList() val relationsModel = generateRelationsModel(relations, forwardRelations, propertyRelations, rootClasses) val customMappingModel = generateCustomMappingModel(info, pluginClasses, rootClasses, propertyClasses, relations, forwardRelations, propertyRelations) diff --git a/o11nplugin-contrail-generator/src/main/kotlin/net/juniper/contrail/vro/generator/model/Relation.kt b/o11nplugin-contrail-generator/src/main/kotlin/net/juniper/contrail/vro/generator/model/Relation.kt index 5de1d086..b4f26e34 100644 --- a/o11nplugin-contrail-generator/src/main/kotlin/net/juniper/contrail/vro/generator/model/Relation.kt +++ b/o11nplugin-contrail-generator/src/main/kotlin/net/juniper/contrail/vro/generator/model/Relation.kt @@ -22,6 +22,7 @@ import net.juniper.contrail.vro.config.isInReversedRelationTo import net.juniper.contrail.vro.config.isModelClassName import net.juniper.contrail.vro.config.nameWithoutGetAndBackRefs import net.juniper.contrail.vro.config.objectReferenceAttributeClass +import net.juniper.contrail.vro.config.order import net.juniper.contrail.vro.config.pluginName import net.juniper.contrail.vro.config.pluralize import net.juniper.contrail.vro.config.propertyName @@ -73,17 +74,21 @@ class PropertyRelation ( } fun List.generateRelations() = asSequence() - .flatMap { it.relations() }.toList() + .sortedBy { it.order } + .flatMap { it.relations() } + .toList() private fun ObjectClass.relations() = methods.asSequence() .filter { it.isChildReferenceGetter } .map { it.childClassName }.filterNotNull() .filter { it.isModelClassName } .map { it.asObjectClass }.filterNotNull() + .sortedBy { it.order } .map { Relation(this, it) } fun List.generateReferenceRelations(): List = asSequence() + .sortedBy { it.order } .flatMap { it.refRelations } .filter { contains(it.childClass) } .toList() @@ -110,6 +115,7 @@ private val ObjectClass.refRelations: Sequence get() = .filter { ! it.isBackRef } .map { ForwardRelation(this, it) } .filter { it.childName isDisplayableChildOf it.parentName } + .sortedBy { it.childClass.order } private val ObjectClass.referenceMethods: Sequence get() = declaredMethods.asSequence() diff --git a/o11nplugin-contrail/src/main/dar/resources/images/address-group.png b/o11nplugin-contrail/src/main/dar/resources/images/address-group.png new file mode 100644 index 00000000..b35aeb7d Binary files /dev/null and b/o11nplugin-contrail/src/main/dar/resources/images/address-group.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/application-policy-set.png b/o11nplugin-contrail/src/main/dar/resources/images/application-policy-set.png new file mode 100644 index 00000000..bc44e7d4 Binary files /dev/null and b/o11nplugin-contrail/src/main/dar/resources/images/application-policy-set.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/firewall-policy.png b/o11nplugin-contrail/src/main/dar/resources/images/firewall-policy.png new file mode 100644 index 00000000..6f55df81 Binary files /dev/null and b/o11nplugin-contrail/src/main/dar/resources/images/firewall-policy.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/firewall-rule.png b/o11nplugin-contrail/src/main/dar/resources/images/firewall-rule.png new file mode 100644 index 00000000..dd413ac6 Binary files /dev/null and b/o11nplugin-contrail/src/main/dar/resources/images/firewall-rule.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/floating-ip-pool.png b/o11nplugin-contrail/src/main/dar/resources/images/floating-ip-pool.png index 713f35dc..aeadbe8d 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/floating-ip-pool.png and b/o11nplugin-contrail/src/main/dar/resources/images/floating-ip-pool.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/floating-ip.png b/o11nplugin-contrail/src/main/dar/resources/images/floating-ip.png index 3f47b924..1b068f03 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/floating-ip.png and b/o11nplugin-contrail/src/main/dar/resources/images/floating-ip.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/global-qos-config.png b/o11nplugin-contrail/src/main/dar/resources/images/global-qos-config.png deleted file mode 100644 index d15d5172..00000000 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/global-qos-config.png and /dev/null differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/instance-ip.png b/o11nplugin-contrail/src/main/dar/resources/images/instance-ip.png new file mode 100644 index 00000000..d4f3cf32 Binary files /dev/null and b/o11nplugin-contrail/src/main/dar/resources/images/instance-ip.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/intstance-ip.png b/o11nplugin-contrail/src/main/dar/resources/images/intstance-ip.png deleted file mode 100644 index 4a2a5732..00000000 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/intstance-ip.png and /dev/null differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/ipam-subnet-type.png b/o11nplugin-contrail/src/main/dar/resources/images/ipam-subnet-type.png index dc196707..5142051c 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/ipam-subnet-type.png and b/o11nplugin-contrail/src/main/dar/resources/images/ipam-subnet-type.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/load-balancer.png b/o11nplugin-contrail/src/main/dar/resources/images/load-balancer.png deleted file mode 100644 index 6f74fe4d..00000000 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/load-balancer.png and /dev/null differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/logical-router.png b/o11nplugin-contrail/src/main/dar/resources/images/logical-router.png deleted file mode 100644 index 30e5e059..00000000 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/logical-router.png and /dev/null differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/network-ipam.png b/o11nplugin-contrail/src/main/dar/resources/images/network-ipam.png index 42eac6e1..bb101e77 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/network-ipam.png and b/o11nplugin-contrail/src/main/dar/resources/images/network-ipam.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/network-policy.png b/o11nplugin-contrail/src/main/dar/resources/images/network-policy.png index 35fc13b1..c840883c 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/network-policy.png and b/o11nplugin-contrail/src/main/dar/resources/images/network-policy.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/physical-router.png b/o11nplugin-contrail/src/main/dar/resources/images/physical-router.png deleted file mode 100644 index 548b49b3..00000000 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/physical-router.png and /dev/null differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/policy-management.png b/o11nplugin-contrail/src/main/dar/resources/images/policy-management.png new file mode 100644 index 00000000..5ae8ca1a Binary files /dev/null and b/o11nplugin-contrail/src/main/dar/resources/images/policy-management.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/port-tuple.png b/o11nplugin-contrail/src/main/dar/resources/images/port-tuple.png new file mode 100644 index 00000000..84d6df99 Binary files /dev/null and b/o11nplugin-contrail/src/main/dar/resources/images/port-tuple.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/project.png b/o11nplugin-contrail/src/main/dar/resources/images/project.png index eca29cda..3cf0bba3 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/project.png and b/o11nplugin-contrail/src/main/dar/resources/images/project.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/qos-config.png b/o11nplugin-contrail/src/main/dar/resources/images/qos-config.png deleted file mode 100644 index e5505bb9..00000000 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/qos-config.png and /dev/null differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/quota-type.png b/o11nplugin-contrail/src/main/dar/resources/images/quota-type.png index eb6c1cac..d1335d10 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/quota-type.png and b/o11nplugin-contrail/src/main/dar/resources/images/quota-type.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/route-table.png b/o11nplugin-contrail/src/main/dar/resources/images/route-table.png deleted file mode 100644 index da2b6101..00000000 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/route-table.png and /dev/null differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/route-target.png b/o11nplugin-contrail/src/main/dar/resources/images/route-target.png deleted file mode 100644 index 2153c206..00000000 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/route-target.png and /dev/null differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/security-group.png b/o11nplugin-contrail/src/main/dar/resources/images/security-group.png index ab329830..04256b69 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/security-group.png and b/o11nplugin-contrail/src/main/dar/resources/images/security-group.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/service-group.png b/o11nplugin-contrail/src/main/dar/resources/images/service-group.png new file mode 100644 index 00000000..8c13e35e Binary files /dev/null and b/o11nplugin-contrail/src/main/dar/resources/images/service-group.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/service-health-check.png b/o11nplugin-contrail/src/main/dar/resources/images/service-health-check.png index d0941dd2..fe661f31 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/service-health-check.png and b/o11nplugin-contrail/src/main/dar/resources/images/service-health-check.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/service-instance.png b/o11nplugin-contrail/src/main/dar/resources/images/service-instance.png index 31e4b48f..39e28a98 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/service-instance.png and b/o11nplugin-contrail/src/main/dar/resources/images/service-instance.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/service-template.png b/o11nplugin-contrail/src/main/dar/resources/images/service-template.png index c4423c7a..a55bd665 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/service-template.png and b/o11nplugin-contrail/src/main/dar/resources/images/service-template.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/tag.png b/o11nplugin-contrail/src/main/dar/resources/images/tag.png new file mode 100644 index 00000000..c5da2b51 Binary files /dev/null and b/o11nplugin-contrail/src/main/dar/resources/images/tag.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/virtual-machine-interface.png b/o11nplugin-contrail/src/main/dar/resources/images/virtual-machine-interface.png index 5d12495d..b671e604 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/virtual-machine-interface.png and b/o11nplugin-contrail/src/main/dar/resources/images/virtual-machine-interface.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/virtual-machine.png b/o11nplugin-contrail/src/main/dar/resources/images/virtual-machine.png index aa0992bc..7697cd2f 100644 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/virtual-machine.png and b/o11nplugin-contrail/src/main/dar/resources/images/virtual-machine.png differ diff --git a/o11nplugin-contrail/src/main/dar/resources/images/virtual-router.png b/o11nplugin-contrail/src/main/dar/resources/images/virtual-router.png deleted file mode 100644 index bea10d67..00000000 Binary files a/o11nplugin-contrail/src/main/dar/resources/images/virtual-router.png and /dev/null differ