Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion gatsby-config.js
Original file line number Diff line number Diff line change
Expand Up @@ -258,7 +258,7 @@ module.exports = {
options: {
name: `JCSMP-Samples`,
remote: `https://github.com/SolaceSamples/solace-samples-java-jcsmp`,
commit: '7ce4d7edfb53d03e44a8b45a405aa53ed10348ef',
commit: '7333ce5eb44953f41fae402b58045f69134b603b',
}
},
{
Expand Down
530 changes: 323 additions & 207 deletions package-lock.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion src/components/404.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<a href="http://solace.dev/" target="_blank" rel="noopener noreferrer">solace.dev</a> is the homebase where developers start building all of the things
</li>
<li>
<a href="http://docs.solace.com/" target="_blank" rel="noopener noreferrer">docs.solace.com</a> houses all PubSub+ Event Broker technical documentation
<a href="http://docs.solace.com/" target="_blank" rel="noopener noreferrer">docs.solace.com</a> houses all Solace Event Broker technical documentation
</li>
<li>
Explore success stories within your <a href="https://solace.com/use-cases/industries/" target="_blank" rel="noopener noreferrer">Industry</a> or the <a href="https://solace.com/use-cases/environments/" target="_blank" rel="noopener noreferrer">Environment</a> you’re interested in
Expand Down
12 changes: 6 additions & 6 deletions src/components/footer.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ const Footer = () => (
target="_blank"
rel="noopener noreferrer"
>
PubSub+ Platform
Solace Platform
</a>
</li>
<li>
Expand All @@ -41,7 +41,7 @@ const Footer = () => (
target="_blank"
rel="noopener noreferrer"
>
PubSub+ Event Broker
Solace Event Broker
</a>
</li>
<li>
Expand All @@ -50,7 +50,7 @@ const Footer = () => (
target="_blank"
rel="noopener noreferrer"
>
PubSub+ Event Broker: Software
Solace Event Broker Software
</a>
</li>
<li>
Expand All @@ -59,7 +59,7 @@ const Footer = () => (
target="_blank"
rel="noopener noreferrer"
>
PubSub+ Event Broker: Appliance
Solace Event Broker Appliance
</a>
</li>
<li>
Expand All @@ -68,7 +68,7 @@ const Footer = () => (
target="_blank"
rel="noopener noreferrer"
>
PubSub+ Event Broker: Cloud
Solace Cloud
</a>
</li>
<li>
Expand All @@ -77,7 +77,7 @@ const Footer = () => (
target="_blank"
rel="noopener noreferrer"
>
PubSub+ Event Portal
Solace Event Portal
</a>
</li>
</ul>
Expand Down
10 changes: 5 additions & 5 deletions src/components/resources.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ const Resources = (props) => {
<a href="https://community.solace.com/">
<div className="custom-card">
<div className="title">Developer Community</div>
<div className="desc">Technical community for PubSub+.</div>
<div className="desc">Technical community for Solace.</div>
<div className="link">Learn More</div>
</div>
</a>
Expand Down Expand Up @@ -72,7 +72,7 @@ const Resources = (props) => {
<div className="custom-card">
<div className="title">Codelabs &amp; Workshops</div>
<div className="desc">
Get guided, hands on coding experience with PubSub+ Codelabs.
Get guided, hands on coding experience with Solace Codelabs.
</div>
<div className="link">Learn More</div>
</div>
Expand All @@ -94,7 +94,7 @@ const Resources = (props) => {
<div className="custom-card">
<div className="title">Free Courses</div>
<div className="desc">
Learn the fundamentals of PubSub+ at your own pace.
Learn the fundamentals of Solace at your own pace.
</div>
<div className="link">Learn More</div>
</div>
Expand All @@ -119,7 +119,7 @@ const Resources = (props) => {
{" "}
SDKPerf is a command line tool for validating performance,
checking configuration, and exploring features associated with
your PubSub+ message broker.
your Solace message broker.
</div>
<div className="link">Learn More</div>
</div>
Expand All @@ -131,7 +131,7 @@ const Resources = (props) => {
<div className="title">Queue Browser</div>
<div className="desc">
Get all the information you need to use JMS ToolBox with
PubSub+.
Solace.
</div>
<div className="link">Learn More</div>
</div>
Expand Down
2 changes: 1 addition & 1 deletion src/pages/404.js
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ const NotFoundPage = () => (
>
docs.solace.com
</a>{" "}
houses all PubSub+ Event Broker technical documentation
houses all Solace Event Broker technical documentation
</ListGroup.Item>
<ListGroup.Item>
<FontAwesomeIcon
Expand Down
6 changes: 3 additions & 3 deletions src/pages/tutorials/c/message-replay.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,11 @@ It's important to note that when initiating replay, the message broker will disc

## Prerequisite

A replay log must be created on the message broker for the Message VPN using [Message Replay CLI configuration](https://docs.solace.com/Configuring-and-Managing/Msg-Replay-Config.htm) or using [Solace PubSub+ Manager](https://docs.solace.com/Solace-PubSub-Manager/PubSub-Manager-Overview.htm) administration console. Another option for configuration is to use the [SEMP API](https://docs.solace.com/SEMP/Using-SEMP.htm).
A replay log must be created on the message broker for the Message VPN using [Message Replay CLI configuration](https://docs.solace.com/Configuring-and-Managing/Msg-Replay-Config.htm) or using [Broker Manager](https://docs.solace.com/Solace-PubSub-Manager/PubSub-Manager-Overview.htm) administration console. Another option for configuration is to use the [SEMP API](https://docs.solace.com/SEMP/Using-SEMP.htm).

**NOTE:** Message Replay is supported on Solace PubSub+ 3530 and 3560 appliances running release 9.1 and greater, and on the Solace PubSub+ software message broker running release 9.1 and greater. Solace C API version 10.5 or later is required.

![Screenshot: Configuring Replay Log using Solace PubSub+ Manager](../../../images/screenshots/config-replay-log.png)
![Screenshot: Configuring Replay Log using Broker Manager](../../../images/screenshots/config-replay-log.png)

## Code

Expand Down Expand Up @@ -237,7 +237,7 @@ $ ./QueuePublisher <msg_backbone_ip:port> <vpn> <client-username> <password> Q/
3. Now start a replay from the message broker. The flow event callback monitors for a replay start event. When the message broker initiates a replay, the flow will see a `SOLCLIENT_FLOW_EVENT_DOWN_ERROR` event with SubCode `SOLCLIENT_SUBCODE_REPLAY_STARTED`. This means an administrator has initiated a replay, and the application must destroy and re-create the flow to receive the replayed messages.
This will replay all logged messages including the live one published in step 2.

![Screenshot: Initiating Replay using Solace PubSub+ Manager](../../../images/screenshots/initiate-replay.png)
![Screenshot: Initiating Replay using Broker Manager](../../../images/screenshots/initiate-replay.png)

## Learn More

Expand Down
22 changes: 11 additions & 11 deletions src/pages/tutorials/c/persistence-with-queues.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,19 +13,19 @@ links:

---

This tutorial builds on the basic concepts introduced in the [publish/subscribe tutorial](../publish-subscribe/), and will show you how to send and receive persistent messages from a PubSub+ queue in a point to point fashion.
This tutorial builds on the basic concepts introduced in the [publish/subscribe tutorial](../publish-subscribe/), and will show you how to send and receive persistent messages from a Solace queue in a point to point fashion.

## Assumptions

This tutorial assumes the following:

* You are familiar with Solace PubSub+ [core concepts](https://docs.solace.com/PubSub-Basics/Core-Concepts.htm).
* You have access to PubSub+ messaging with the following configuration details:
* Connectivity information for a PubSub+ message-VPN configured for guaranteed messaging support
* You have access to Solace messaging with the following configuration details:
* Connectivity information for a Solace message-VPN configured for guaranteed messaging support
* Enabled client username and password
* Client-profile enabled with guaranteed messaging permissions.

One simple way to get access to Solace messaging quickly is to create a messaging service in Solace PubSub+ Cloud [as outlined here](https://solace.com/products/event-broker/cloud/). You can find other ways to get access to Solace messaging below.
One simple way to get access to Solace messaging quickly is to create a messaging service in Solace Solace Cloud [as outlined here](https://solace.com/products/event-broker/cloud/). You can find other ways to get access to Solace messaging below.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I dont think this should be Solace Solace...


## Goals

Expand All @@ -52,9 +52,9 @@ Durable endpoints are not auto created on Solace message routers. However there
* Using the management interface
* Using the APIs

Using the Solace PubSub+ APIs to provision an endpoint can be a convenient way of getting started quickly without needing to become familiar with the management interface. This is why it is used in this tutorial. However it should be noted that the management interface provides more options to control the queue properties. So generally it becomes the preferred method over time.
Using the Solace Solace Messaging APIs to provision an endpoint can be a convenient way of getting started quickly without needing to become familiar with the management interface. This is why it is used in this tutorial. However it should be noted that the management interface provides more options to control the queue properties. So generally it becomes the preferred method over time.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Solace Solace


Provisioning an endpoint through the API requires the “Guaranteed Endpoint Create” permission in the client-profile. You can confirm this is enabled by looking at the client profile in PubSub+ Manager. If it is correctly set you will see the following:
Provisioning an endpoint through the API requires the “Guaranteed Endpoint Create” permission in the client-profile. You can confirm this is enabled by looking at the client profile in Broker Manager. If it is correctly set you will see the following:

![Screenshot: Persistence](../../../images/screenshots/persistence-tutorial-image-3.png)

Expand Down Expand Up @@ -112,7 +112,7 @@ Now it is time to send a message to the queue.

![Diagram: Sending a Message to a Queue](../../../images/diagrams/sending-message-to-queue.png)

To send a message, you must create a message and a queue destination. This tutorial will send a PubSub+ binary message with contents "Hello world!". Then you must send the message to the PubSub+ message router.
To send a message, you must create a message and a queue destination. This tutorial will send a PubSub+ binary message with contents "Hello world!". Then you must send the message to the Solace Event Broker.


```cpp
Expand Down Expand Up @@ -145,19 +145,19 @@ To send a message, you must create a message and a queue destination. This tutor

```

The message is transferred to the PubSub+ message router asynchronously, but if all goes well, it will be waiting for your consumer on the queue.
The message is transferred to the Solace Event Broker asynchronously, but if all goes well, it will be waiting for your consumer on the queue.

## Receiving a message from a queue

Now it is time to receive the messages sent to your queue.

![Diagram: Receiving a Message from a Queue](../../../images/diagrams/receiving-message-from-queue.png)

You still need to connect a session just as you did with the publisher. With a connected session, you then need to bind to the PubSub+ message router queue with a flow receiver. Flow receivers allow applications to receive messages from a PubSub+ guaranteed message flow. Flows encapsulate all of the acknowledgement behaviour required for guaranteed messaging. Conveniently flow receivers have the same interface as message consumers but flows also require some additional properties on creation.
You still need to connect a session just as you did with the publisher. With a connected session, you then need to bind to the Solace Event Broker queue with a flow receiver. Flow receivers allow applications to receive messages from a PubSub+ guaranteed message flow. Flows encapsulate all of the acknowledgement behaviour required for guaranteed messaging. Conveniently flow receivers have the same interface as message consumers but flows also require some additional properties on creation.

A flow requires properties. At its most basic, the flow properties require the endpoint (our newly provisioned or existing queue) and an ack mode. In this example you’ll use the client ack mode where the application will explicitly acknowledge each message.

Flows are created from PubSub+ session objects just as direct message consumers are.
Flows are created from Solace session objects just as direct message consumers are.

Notice `flowMessageReceiveCallback` and `flowEventCallback` callbacks that are passed in when creating a flow. These callbacks will be invoked when a message arrives to the endpoint (the queue) or a flow events occurs.

Expand Down Expand Up @@ -227,7 +227,7 @@ Combining the example source code shown above results in the following source co

### Running the Samples

If you start the `QueuePublisher` with the required arguments of your PubSub+ messaging, if will publish the message to the specified queue. In the example below, a message is published to a queue `q1`
If you start the `QueuePublisher` with the required arguments of your Solace messaging, if will publish the message to the specified queue. In the example below, a message is published to a queue `q1`
```sh
bin$ . /setenv.sh
bin$ ./QueuePublisher <msg_backbone_ip:port> <message-vpn> <client-username> <password> <queue>
Expand Down
16 changes: 8 additions & 8 deletions src/pages/tutorials/c/publish-subscribe.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,18 +14,18 @@ links:
link: https://github.com/SolaceDev/solace-dev-tutorials/blob/master/src/pages/tutorials/c/publish-subscribe.md
---

This tutorial will introduce you to the fundamentals of the Solace PubSub+ API by connecting a client, adding a topic subscription and sending a message matching this topic subscription. This forms the basis for any publish / subscribe message exchange.
This tutorial will introduce you to the fundamentals of the Solace Solace Messaging API by connecting a client, adding a topic subscription and sending a message matching this topic subscription. This forms the basis for any publish / subscribe message exchange.

## Assumptions

This tutorial assumes the following:

* You are familiar with Solace PubSub+ [core concepts](https://docs.solace.com/PubSub-Basics/Core-Concepts.htm).
* You have access to PubSub+ messaging with the following configuration details:
* Connectivity information for a PubSub+ message-VPN
* You have access to Solace messaging with the following configuration details:
* Connectivity information for a Solace message-VPN
* Enabled client username and password

One simple way to get access to PubSub+ messaging quickly is to create a messaging service in PubSub+ Cloud [as outlined here](https://solace.com/products/event-broker/cloud/). You can find other ways to get access to PubSub+ messaging below.
One simple way to get access to Solace messaging quickly is to create a messaging service in Solace Cloud [as outlined here](https://solace.com/products/event-broker/cloud/). You can find other ways to get access to Solace messaging below.


## Goals
Expand Down Expand Up @@ -72,7 +72,7 @@ Now it is time to send a message to the waiting consumer.

![Diagram: Sending a Message](../../../images/diagrams/pub-sub-sending-message-300x134.png)

To send a message, you must create a message and a topic destination. This tutorial will send a PubSub+ binary message with contents "Hello world!". Then you must send the message to the PubSub+ message router.
To send a message, you must create a message and a topic destination. This tutorial will send a PubSub+ binary message with contents "Hello world!". Then you must send the message to the Solace Event Broker.

```cpp
/* Message */
Expand Down Expand Up @@ -104,9 +104,9 @@ solClient_msg_free ( &msg_p );

In the SolClient API, messages are allocated and freed from an internal API message pool for greatest performance and efficiency. Therefore as shown, messages must be acquired by calls to solClient_msg_alloc and then later freed back to the pool by calls to solClient_msg_free.

The minimum properties required to create a SolClient message that can be sent is to set the delivery mode, queue or topic destination, and message contents as shown in the above code. Once the message is created it is sent to the PubSub+ message router with a call to solClient_session_sendMsg.
The minimum properties required to create a SolClient message that can be sent is to set the delivery mode, queue or topic destination, and message contents as shown in the above code. Once the message is created it is sent to the Solace Event Broker with a call to solClient_session_sendMsg.

At this point the producer has sent a message to the PubSub+ message router and your waiting consumer will have received the message and printed its contents to the screen.
At this point the producer has sent a message to the Solace Event Broker and your waiting consumer will have received the message and printed its contents to the screen.

## Summarizing

Expand All @@ -125,7 +125,7 @@ The OS source code simply provides platform abstraction. The subscriber sample m

### Running the Samples

If you start the `TopicSubscriber` with the required arguments of your PubSub+ messaging, it will connect and wait for a message.
If you start the `TopicSubscriber` with the required arguments of your Solace messaging, it will connect and wait for a message.

```sh
bin$ . ./setenv.sh
Expand Down
Loading