|
@@ -25,9 +25,12 @@ import {
|
|
TopicFormDataRaw,
|
|
TopicFormDataRaw,
|
|
ClusterName,
|
|
ClusterName,
|
|
} from 'redux/interfaces';
|
|
} from 'redux/interfaces';
|
|
-import { getResponse } from 'lib/errorHandling';
|
|
|
|
|
|
+import {
|
|
|
|
+ getResponse,
|
|
|
|
+ showServerError,
|
|
|
|
+ showSuccessAlert,
|
|
|
|
+} from 'lib/errorHandling';
|
|
import { clearTopicMessages } from 'redux/reducers/topicMessages/topicMessagesSlice';
|
|
import { clearTopicMessages } from 'redux/reducers/topicMessages/topicMessagesSlice';
|
|
-import { showSuccessAlert } from 'redux/reducers/alerts/alertsSlice';
|
|
|
|
import {
|
|
import {
|
|
consumerGroupsApiClient,
|
|
consumerGroupsApiClient,
|
|
messagesApiClient,
|
|
messagesApiClient,
|
|
@@ -41,6 +44,7 @@ export const fetchTopicsList = createAsyncThunk<
|
|
try {
|
|
try {
|
|
return await topicsApiClient.getTopics(payload);
|
|
return await topicsApiClient.getTopics(payload);
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -55,6 +59,7 @@ export const fetchTopicDetails = createAsyncThunk<
|
|
|
|
|
|
return { topicDetails, topicName };
|
|
return { topicDetails, topicName };
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -69,6 +74,7 @@ export const fetchTopicConfig = createAsyncThunk<
|
|
|
|
|
|
return { topicConfig, topicName };
|
|
return { topicConfig, topicName };
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -124,9 +130,12 @@ export const createTopic = createAsyncThunk<
|
|
clusterName,
|
|
clusterName,
|
|
topicCreation: formatTopicCreation(data),
|
|
topicCreation: formatTopicCreation(data),
|
|
});
|
|
});
|
|
-
|
|
|
|
|
|
+ showSuccessAlert({
|
|
|
|
+ message: `Topic ${data.name} created successfully`,
|
|
|
|
+ });
|
|
return undefined;
|
|
return undefined;
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -143,6 +152,7 @@ export const fetchTopicConsumerGroups = createAsyncThunk<
|
|
|
|
|
|
return { consumerGroups, topicName };
|
|
return { consumerGroups, topicName };
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -188,6 +198,7 @@ export const updateTopic = createAsyncThunk<
|
|
|
|
|
|
return { topic };
|
|
return { topic };
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -196,18 +207,17 @@ export const updateTopic = createAsyncThunk<
|
|
export const deleteTopic = createAsyncThunk<
|
|
export const deleteTopic = createAsyncThunk<
|
|
{ topicName: TopicName },
|
|
{ topicName: TopicName },
|
|
DeleteTopicRequest
|
|
DeleteTopicRequest
|
|
->('topic/deleteTopic', async (payload, { rejectWithValue, dispatch }) => {
|
|
|
|
|
|
+>('topic/deleteTopic', async (payload, { rejectWithValue }) => {
|
|
try {
|
|
try {
|
|
const { topicName, clusterName } = payload;
|
|
const { topicName, clusterName } = payload;
|
|
await topicsApiClient.deleteTopic(payload);
|
|
await topicsApiClient.deleteTopic(payload);
|
|
- dispatch(
|
|
|
|
- showSuccessAlert({
|
|
|
|
- id: `message-${topicName}-${clusterName}`,
|
|
|
|
- message: 'Topic successfully deleted!',
|
|
|
|
- })
|
|
|
|
- );
|
|
|
|
|
|
+ showSuccessAlert({
|
|
|
|
+ id: `message-${topicName}-${clusterName}`,
|
|
|
|
+ message: 'Topic successfully deleted!',
|
|
|
|
+ });
|
|
return { topicName };
|
|
return { topicName };
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -215,19 +225,17 @@ export const deleteTopic = createAsyncThunk<
|
|
export const recreateTopic = createAsyncThunk<
|
|
export const recreateTopic = createAsyncThunk<
|
|
{ topic: Topic },
|
|
{ topic: Topic },
|
|
RecreateTopicRequest
|
|
RecreateTopicRequest
|
|
->('topic/recreateTopic', async (payload, { rejectWithValue, dispatch }) => {
|
|
|
|
|
|
+>('topic/recreateTopic', async (payload, { rejectWithValue }) => {
|
|
try {
|
|
try {
|
|
const { topicName, clusterName } = payload;
|
|
const { topicName, clusterName } = payload;
|
|
const topic = await topicsApiClient.recreateTopic(payload);
|
|
const topic = await topicsApiClient.recreateTopic(payload);
|
|
- dispatch(
|
|
|
|
- showSuccessAlert({
|
|
|
|
- id: `message-${topicName}-${clusterName}`,
|
|
|
|
- message: 'Topic successfully recreated!',
|
|
|
|
- })
|
|
|
|
- );
|
|
|
|
-
|
|
|
|
|
|
+ showSuccessAlert({
|
|
|
|
+ id: `message-${topicName}-${clusterName}`,
|
|
|
|
+ message: 'Topic successfully recreated!',
|
|
|
|
+ });
|
|
return { topic };
|
|
return { topic };
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -241,6 +249,7 @@ export const fetchTopicMessageSchema = createAsyncThunk<
|
|
const schema = await messagesApiClient.getTopicSchema(payload);
|
|
const schema = await messagesApiClient.getTopicSchema(payload);
|
|
return { schema, topicName };
|
|
return { schema, topicName };
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -263,15 +272,14 @@ export const updateTopicPartitionsCount = createAsyncThunk<
|
|
topicName,
|
|
topicName,
|
|
partitionsIncrease: { totalPartitionsCount: partitions },
|
|
partitionsIncrease: { totalPartitionsCount: partitions },
|
|
});
|
|
});
|
|
- dispatch(
|
|
|
|
- showSuccessAlert({
|
|
|
|
- id: `message-${topicName}-${clusterName}-${partitions}`,
|
|
|
|
- message: 'Number of partitions successfully increased!',
|
|
|
|
- })
|
|
|
|
- );
|
|
|
|
|
|
+ showSuccessAlert({
|
|
|
|
+ id: `message-${topicName}-${clusterName}-${partitions}`,
|
|
|
|
+ message: 'Number of partitions successfully increased!',
|
|
|
|
+ });
|
|
dispatch(fetchTopicDetails({ clusterName, topicName }));
|
|
dispatch(fetchTopicDetails({ clusterName, topicName }));
|
|
return undefined;
|
|
return undefined;
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -298,6 +306,7 @@ export const updateTopicReplicationFactor = createAsyncThunk<
|
|
|
|
|
|
return undefined;
|
|
return undefined;
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -320,6 +329,7 @@ export const deleteTopics = createAsyncThunk<
|
|
|
|
|
|
return undefined;
|
|
return undefined;
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -340,6 +350,7 @@ export const clearTopicsMessages = createAsyncThunk<
|
|
|
|
|
|
return undefined;
|
|
return undefined;
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
|
+ showServerError(err as Response);
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
return rejectWithValue(await getResponse(err as Response));
|
|
}
|
|
}
|
|
});
|
|
});
|