private void checkReference(LogicalBinding binding) { if (!(binding.getParent() instanceof LogicalReference)) { throw new AssertionError("Expected " + LogicalReference.class.getName() + " as parent to binding"); } }
private void checkService(LogicalBinding<?> binding) { if (!(binding.getParent() instanceof LogicalService)) { throw new AssertionError("Expected " + LogicalService.class.getName() + " as parent to binding"); } }
private void checkService(LogicalBinding<?> binding) { if (!(binding.getParent() instanceof LogicalService)) { throw new AssertionError("Expected " + LogicalService.class.getName() + " as parent to binding"); } }
private void checkService(LogicalBinding<?> binding) { if (!(binding.getParent() instanceof LogicalService)) { throw new AssertionError("Expected " + LogicalService.class.getName() + " as parent to binding"); } }
private void checkReference(LogicalBinding binding) { if (!(binding.getParent() instanceof LogicalReference)) { throw new AssertionError("Expected " + LogicalReference.class.getName() + " as parent to binding"); } }
private void checkReference(LogicalBinding binding) { if (!(binding.getParent() instanceof LogicalReference)) { throw new AssertionError("Expected " + LogicalReference.class.getName() + " as parent to binding"); } }
private ServiceEndpointDefinition synthesizeEndpointFromWsdlInterface(LogicalBinding<WsBindingDefinition> binding, WsdlServiceContract wsdlContract) throws EndpointResolutionException { URI targetUri; Definition wsdl = wsdlContract.getDefinition(); QName portType = wsdlContract.getPortType().getQName(); QName serviceName = new QName(portType.getNamespaceURI(), portType.getLocalPart() + "Service"); QName portName = new QName(portType.getNamespaceURI(), portType.getLocalPart() + "Port"); Bindable service = binding.getParent(); targetUri = URI.create(service.getUri().getFragment()); String serializedWsdl = endpointResolver.serializeWsdl(wsdl); return new ServiceEndpointDefinition(serviceName, portName, targetUri, serializedWsdl); }
private ServiceEndpointDefinition createServiceEndpointDefinition(LogicalBinding<WsBinding> binding, JavaServiceContract contract, Class<?> serviceClass) { URI targetUri = binding.getDefinition().getTargetUri(); if (targetUri == null) { targetUri = URI.create(binding.getParent().getUri().getFragment()); // use the service URI fragment } return synthesizer.synthesizeServiceEndpoint(contract, serviceClass, targetUri); }
public PolicyResult resolvePolicies(LogicalBinding<?> binding) throws PolicyResolutionException { Bindable parent = binding.getParent(); LogicalBinding<RemoteBindingDefinition> remoteBinding = new LogicalBinding<>(RemoteBindingDefinition.INSTANCE, parent); Bindable bindable = binding.getParent(); if (bindable instanceof LogicalReference) { return resolvePolicies(bindable.getOperations(), remoteBinding, binding, bindable.getParent(), null); } else if (bindable instanceof LogicalService) { return resolvePolicies(bindable.getOperations(), binding, remoteBinding, null, bindable.getParent()); } else { throw new UnsupportedOperationException(); } }
public PolicyResult resolveCallbackPolicies(LogicalBinding<?> binding) throws PolicyResolutionException { LogicalBinding<RemoteBindingDefinition> remoteBinding = new LogicalBinding<>(RemoteBindingDefinition.INSTANCE, binding.getParent()); Bindable bindable = binding.getParent(); if (bindable instanceof LogicalReference) { return resolvePolicies(bindable.getCallbackOperations(), remoteBinding, binding, bindable.getParent(), null); } else if (bindable instanceof LogicalService) { return resolvePolicies(bindable.getCallbackOperations(), remoteBinding, binding, bindable.getParent(), null); } else { throw new IllegalArgumentException("Only services and references can have callback operations"); } }
public ZeroMQTargetDefinition generateServiceBindingTarget(LogicalBinding<ZeroMQBindingDefinition> binding, ServiceContract contract, List<LogicalOperation> operations, EffectivePolicy policy) throws GenerationException { URI targetUri = binding.getParent().getUri(); ZeroMQMetadata metadata = binding.getDefinition().getZeroMQMetadata(); return generateTarget(contract, targetUri, metadata); }
private void validateIntents(LogicalBinding<?> binding) throws PolicyResolutionException { Set<Intent> intents = policyRegistry.getDefinitions(binding.getIntents(), Intent.class); for (Intent current : intents) { for (Intent intent : intents) { if (current.getExcludes().contains(intent.getName())) { throw new PolicyResolutionException("Mutually exclusive intents specified on binding: " + binding.getParent().getUri()); } } } }
public PhysicalConnectionSource generateConnectionSource(LogicalConsumer consumer, LogicalBinding<NATSBinding> binding, DeliveryType deliveryType) { NATSBinding natsBinding = binding.getDefinition(); URI channelUri = binding.getParent().getUri(); String defaultTopic = natsBinding.getDefaultTopic(); NATSData natsData = generateData(natsBinding); String consumerId = consumer.getUri().toString(); return new NATSConnectionSource(consumer.getUri(), channelUri, consumerId, defaultTopic, natsData); }
public PhysicalConnectionTarget generateConnectionTarget(LogicalProducer producer, LogicalBinding<ZeroMQBinding> binding, DeliveryType deliveryType) { ZeroMQBinding bindingDefinition = binding.getDefinition(); URI targetUri = bindingDefinition.getTargetUri(); if (targetUri == null) { // no target uri specified, generate one as it is not used for the endpoint address targetUri = binding.getParent().getUri(); } ZeroMQMetadata metadata = bindingDefinition.getZeroMQMetadata(); setChannelName(binding, metadata); boolean dedicatedThread = DeliveryType.ASYNCHRONOUS_WORKER == deliveryType; return new ZeroMQConnectionTarget(targetUri, metadata, dedicatedThread); }
private URI getContributionUri(LogicalBinding<WsBindingDefinition> binding) { LogicalComponent<?> current = binding.getParent().getParent(); while (current.getParent().getParent() != null) { // component deployed directly to the domain current = current.getParent(); } return current.getDefinition().getContributionUri(); }
public PhysicalConnectionTarget generateConnectionTarget(LogicalProducer producer, LogicalBinding<NATSBinding> binding, DeliveryType deliveryType) { NATSBinding natsBinding = binding.getDefinition(); URI channelUri = binding.getParent().getUri(); String defaultTopic = natsBinding.getDefaultTopic(); NATSData natsData = generateData(natsBinding); return new NATSConnectionTarget(producer.getUri(), channelUri, defaultTopic, natsData); }
public JUnitSourceDefinition generateSource(LogicalBinding<JUnitBindingDefinition> bindingDefinition, ServiceContract contract, List<LogicalOperation> operations, EffectivePolicy policy) throws GenerationException { ComponentDefinition<?> definition = bindingDefinition.getParent().getParent().getDefinition(); String testName = definition.getName(); ContextConfiguration configuration = bindingDefinition.getDefinition().getConfiguration(); return new JUnitSourceDefinition(testName, configuration); }
public FtpWireTargetDefinition generateTarget(LogicalBinding<FtpBindingDefinition> binding, ServiceContract contract, List<LogicalOperation> operations, EffectivePolicy policy) throws GenerationException { if (operations.size() != 1) { throw new GenerationException("Expects only one operation"); } URI id = binding.getParent().getParent().getParent().getUri(); FtpBindingDefinition definition = binding.getDefinition(); boolean active = definition.getTransferMode() == TransferMode.ACTIVE; FtpSecurity security = processPolicies(policy); FtpWireTargetDefinition hwtd = new FtpWireTargetDefinition(id, active, security, connectTimeout, socketTimeout); hwtd.setUri(definition.getTargetUri()); if (!definition.getSTORCommands().isEmpty()) { hwtd.setSTORCommands(definition.getSTORCommands()); } hwtd.setTmpFileSuffix(binding.getDefinition().getTmpFileSuffix()); return hwtd; }