Search in sources :

Example 6 with Link

use of org.platformlayer.core.model.Link in project platformlayer by platformlayer.

the class LinkHelpers method buildLinkTargetProperties.

// public InetAddressChooser inetAddressChooser = InetAddressChooser.preferIpv6();
public Map<String, String> buildLinkTargetProperties(LinkConsumer consumer, List<Link> links) throws OpsException {
    Map<String, String> config = Maps.newHashMap();
    if (links != null) {
        for (Link link : links) {
            ItemBase item = platformLayer.getItem(link.getTarget());
            LinkTarget linkTarget = providers.toInterface(item, LinkTarget.class);
            Map<String, String> linkTargetConfig = buildLinkTargetConfiguration(consumer, link.name, linkTarget);
            config.putAll(linkTargetConfig);
        }
    }
    return config;
}
Also used : ItemBase(org.platformlayer.core.model.ItemBase) Link(org.platformlayer.core.model.Link)

Example 7 with Link

use of org.platformlayer.core.model.Link in project platformlayer by platformlayer.

the class StandardTemplateData method getConfigurationProperties.

protected Map<String, String> getConfigurationProperties() throws OpsException {
    Map<String, String> properties = Maps.newHashMap();
    List<Link> modelLinks = getLinks();
    if (modelLinks != null && !modelLinks.isEmpty()) {
        NetworkPoint networkPoint = NetworkPoint.forTargetInContext();
        InetAddressChooser inetAddressChooser = NearestAddressChooser.build(networkPoint);
        SimpleLinkConsumer consumer = new SimpleLinkConsumer(getModel().getKey(), inetAddressChooser);
        properties.putAll(links.buildLinkTargetProperties(consumer, modelLinks));
    }
    return properties;
}
Also used : InetAddressChooser(org.platformlayer.InetAddressChooser) SimpleLinkConsumer(org.platformlayer.ops.uses.SimpleLinkConsumer) Link(org.platformlayer.core.model.Link) NetworkPoint(org.platformlayer.ops.networks.NetworkPoint)

Aggregations

Link (org.platformlayer.core.model.Link)7 PlatformLayerKey (org.platformlayer.core.model.PlatformLayerKey)3 PlatformLayerClient (org.platformlayer.PlatformLayerClient)2 UntypedItemXml (org.platformlayer.UntypedItemXml)2 ItemBase (org.platformlayer.core.model.ItemBase)2 Links (org.platformlayer.core.model.Links)2 InetAddressChooser (org.platformlayer.InetAddressChooser)1 NetworkPoint (org.platformlayer.ops.networks.NetworkPoint)1 LinkTarget (org.platformlayer.ops.uses.LinkTarget)1 SimpleLinkConsumer (org.platformlayer.ops.uses.SimpleLinkConsumer)1