Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve some icons based on Apache Camel EIP icons #4

Open
aheil opened this issue Jul 5, 2019 · 1 comment
Open

Improve some icons based on Apache Camel EIP icons #4

aheil opened this issue Jul 5, 2019 · 1 comment
Labels
enhancement New feature or request

Comments

@aheil
Copy link
Member

aheil commented Jul 5, 2019

At https://camel.apache.org/eip.html you find some variants on the typical EIP pattern icons which could be an improvement to the original icons introduced by GH. The EIP-PlantUML icons could be checked for these improvements.

@aheil aheil added the enhancement New feature or request label Jul 5, 2019
@Potherca
Copy link
Member

Potherca commented Aug 21, 2022

To make this task more concrete, I've made a list of all the images from the linked page, and an overview of all sprites already in EIP-PlantUML

These are the 44 icons that need to be checked against those already in EIP-PlantUML:

  • Aggregator
    image
  • ChannelAdapter
    image
  • Channel
    image
  • CompetingConsumers
    image
  • ContentBasedRouter
    image
  • ContentFilter
    image
  • ControlBus
    image
  • CorrelationIdentifier
    image
  • DataEnricher
    image
  • DeadLetterChannel
    image
  • Detour
    image
  • DistributionAggregate
    image
  • DurableSubscription
    image
  • DynamicRouter
    image
  • EventDrivenConsumer
    image
  • EventMessage
    image
  • GuaranteedMessaging
    image
  • MessageBroker
    image
  • MessageBus
    image
  • MessageDispatcher
    image
  • MessageEndpoint
    image
  • MessageExpiration
    image
  • MessageFilter
    image
  • Message
    image
  • MessageSelector
    image
  • MessageTranslator
    image
  • MessagingAdapter
    image
  • MessagingBridge
    image
  • MessagingGateway
    image
  • Normalizer
    image
  • PipesAndFilters
    image
  • PointToPoint
    image
  • PollingConsumer
    image
  • ProcessManager
    image
  • PublishSubscribe
    image
  • RecipientList
    image
  • RequestReply
    image
  • Resequencer
    image
  • ReturnAddress
    image
  • RoutingTable
    image
  • Splitter
    image
  • StoreInLibrary
    image
  • TransactionalClient
    image
  • WireTap
    image
Full source from page
image Message Channel How does one application communicate with another using messaging?
image Message How can two applications be connected by a message channel exchange a piece of information?
image Pipes and Filters How can we perform complex processing on a message while maintaining independence and flexibility?
image Message Router How can you decouple individual processing steps so that messages can be passed to different filters depending on a set of conditions?
image Message Translator How can systems using different data formats communicate with each other using messaging?
image Message Endpoint How does an application connect to a messaging channel to send and receive messages?
image Point to Point Channel How can the caller be sure that exactly one receiver will receive the document or perform the call?
image Publish Subscribe Channel How can the sender broadcast an event to all interested receivers?
image Dead Letter Channel What will the messaging system do with a message it cannot deliver?
image Guaranteed Delivery How can the sender make sure that a message will be delivered, even if the messaging system fails?
image Channel Adapter How can you connect an application to the messaging system so that it can send and receive messages?
image Messaging Bridge How can multiple messaging systems be connected so that messages available on one are also available on the others??
image Message Bus What is an architecture that enables separate applications to work together, but in a de-coupled fashion such that applications can be easily added or removed without affecting the others?
image Change Data Capture Data synchronization by capturing changes made to a database, and apply those changes to another system.
image Event Message How can messaging be used to transmit events from one application to another?
image Request Reply When an application sends a message, how can it get a response from the receiver?
image Return Address How does a replier know where to send the reply?
image Correlation Identifier How does a requestor that has received a reply know which request this is the reply for?
image Message Expiration How can a sender indicate when a message should be considered stale and thus shouldn’t be processed?
image Content Based Router How do we handle a situation where the implementation of a single logical function (e.g., inventory check) is spread across multiple physical systems?
image Message Filter How can a component avoid receiving uninteresting messages?
image Dynamic Router How can you avoid the dependency of the router on all possible destinations while maintaining its efficiency?
image Recipient List How do we route a message to a list of (static or dynamically) specified recipients?
image Splitter How can we process a message if it contains multiple elements, each of which may have to be processed in a different way?
image Aggregator How do we combine the results of individual, but related messages so that they can be processed as a whole?
image Resequencer How can we get a stream of related but out-of-sequence messages back into the correct order?
image Composed Message Processor How can you maintain the overall message flow when processing a message consisting of multiple elements, each of which may require different processing?
image Scatter-Gather How do you maintain the overall message flow when a message needs to be sent to multiple recipients, each of which may send a reply?
image Routing Slip How do we route a message consecutively through a series of processing steps when the sequence of steps is not known at design-time and may vary for each message?
image Process Manager How do we route a message through multiple processing steps when the required steps may not be known at design-time and may not be sequential?
image Message Broker How can you decouple the destination of a message from the sender and maintain central control over the flow of messages?
image Threads How can I decouple the continued routing of a message from the current thread?
image Throttler How can I throttle messages to ensure that a specific endpoint does not get overloaded, or we don’t exceed an agreed SLA with some external service?
image Sampling How can I sample one message out of many in a given period to avoid downstream route does not get overloaded?
image Kamelet How can I call Kamelets (route templates).
image Delayer How can I delay the sending of a message?
image Load Balancer How can I balance load across a number of endpoints?
image Circuit Breaker How can I stop to call an external service if the service is broken?
image Stop How can I stop continue routing a message?
image Service Call How can I call a remote service in a distributed system where the service is looked up from a service registry of some sorts?
image Saga How can I define a series of related actions in a Camel route that should be either completed successfully (all of them) or not-executed/compensated?
image Multicast How can I route a message to a number of endpoints at the same time?
image Loop How can I repeat processing a message in a loop?
image Content Enricher How do we communicate with another system if the message originator does not have all the required data items available?
image Content Filter How do you simplify dealing with a large message, when you are interested only in a few data items?
image Claim Check How can we reduce the data volume of message sent across the system without sacrificing information content?
image Normalizer How do you process messages that are semantically equivalent, but arrive in a different format?
image Sort How can I sort the body of a message?
image Script How do I execute a script which may not change the message?
image Validate How can I validate a message?
image Messaging Mapper How do you move data between domain objects and the messaging infrastructure while keeping the two independent of each other?
image Event Driven Consumer How can an application automatically consume messages as they become available?
image Polling Consumer How can an application consume a message when the application is ready?
image Competing Consumers How can a messaging client process multiple messages concurrently?
image Message Dispatcher How can multiple consumers on a single channel coordinate their message processing?
image Selective Consumer How can a message consumer select which messages it wishes to receive?
image Durable Subscriber How can a subscriber avoid missing messages while it’s not listening for them?
image Idempotent Consumer How can a message receiver deal with duplicate messages?
image Resumable Consumer How can a message receiver resume from last known offset?
image Transactional Client How can a client control its transactions with the messaging system?
image Messaging Gateway How do you encapsulate access to the messaging system from the rest of the application?
image Service Activator How can an application design a service to be invoked both via various messaging technologies and via non-messaging techniques?
image ControlBus How can we effectively administer a messaging system that is distributed across multiple platforms and a wide geographic area?
image Detour How can you route a message through intermediate steps to perform validation, testing or debugging functions?
image Wire Tap How do you inspect messages that travel on a point-to-point channel?
image Message History How can we effectively analyze and debug the flow of messages in a loosely coupled system?
image Log How can I log processing a message?
image Step Groups together a set of EIPs into a composite logical unit for metrics and monitoring.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Todo
Development

No branches or pull requests

2 participants