Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Arrays;
- import java.util.Scanner;
- public class Notifications2 {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- int messagesNumber = Integer.parseInt(scanner.nextLine());
- readAndProcessMessage(scanner, messagesNumber);
- }
- private static void showSuccessMessage(String operation, String message, StringBuilder stringBuilder) {
- operation = String.format("Successfully executed %s.", operation);
- char[] row = new char[operation.length()];
- Arrays.fill(row, '=');
- message = String.format("%s.", message);
- String result = String.format("%s%n%s%n%s%n%n", operation, String.valueOf(row), message);
- stringBuilder.append(result);
- }
- private static void showWarningMessage(String message, StringBuilder stringBuilder) {
- message = String.format("Warning: %s.", message);
- char[] row = new char[message.length()];
- Arrays.fill(row, '=');
- String result = String.format("%s%n%s%n%n", message, String.valueOf(row));
- stringBuilder.append(result);
- }
- private static void showErrorMessage(String operation, String message, int errorCode, StringBuilder stringBuilder) {
- operation = String.format("Failed to execute %s.", operation);
- char[] row = new char[operation.length()];
- Arrays.fill(row, '=');
- message = String.format("Reason: %s.", message);
- String code = String.format("Error code: %d.", errorCode);
- String result = String.format("%s%n%s%n%s%n%s%n%n", operation, String.valueOf(row), message, code);
- stringBuilder.append(result);
- }
- private static void readAndProcessMessage(Scanner scanner, int messagesNumber) {
- StringBuilder stringBuilder = new StringBuilder();
- for (int i = 0; i < messagesNumber; i++) {
- String messageType = scanner.nextLine();
- switch (messageType) {
- case "success":
- String operation = scanner.nextLine();
- String message = scanner.nextLine();
- showSuccessMessage(operation, message, stringBuilder);
- break;
- case "warning":
- message = scanner.nextLine();
- showWarningMessage(message, stringBuilder);
- break;
- case "error":
- operation = scanner.nextLine();
- message = scanner.nextLine();
- int errorCode = Integer.parseInt(scanner.nextLine());
- showErrorMessage(operation, message, errorCode, stringBuilder);
- break;
- default:
- break;
- }
- }
- System.out.print(stringBuilder);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement