import java.util.HashMap;
import java.util.Map;
public class CookieCompactor {
private static final int MAX_COOKIES = 10; // Maximum number of cookies to display
private static final int MAX_COOKIE_NAME_LENGTH = 20; //Maximum length of cookie name
private static final int MAX_COOKIE_VALUE_LENGTH = 50; //Maximum length of cookie value
public static void compactCookies(Map<String, String> cookies) {
if (cookies == null || cookies.isEmpty()) {
System.out.println("No cookies to compact.");
return;
}
System.out.println("Cookies:");
int count = 0;
for (Map.Entry<String, String> entry : cookies.entrySet()) {
if (count >= MAX_COOKIES) {
System.out.println("... (More cookies available)");
break;
}
String name = entry.getKey();
String value = entry.getValue();
// Truncate name if too long
if (name.length() > MAX_COOKIE_NAME_LENGTH) {
name = name.substring(0, MAX_COOKIE_NAME_LENGTH) + "...";
}
// Truncate value if too long
if (value.length() > MAX_COOKIE_VALUE_LENGTH) {
value = value.substring(0, MAX_COOKIE_VALUE_LENGTH) + "...";
}
System.out.println(" " + name + ": " + value);
count++;
}
}
public static void main(String[] args) {
Map<String, String> cookies = new HashMap<>();
cookies.put("sessionID", "abcdef1234567890");
cookies.put("username", "john.doe");
cookies.put("theme", "dark");
cookies.put("language", "en-US");
cookies.put("lastVisit", "2024-01-01");
cookies.put("preferences", "{\"font_size\": 12, \"show_images\": true}");
cookies.put("user_id", "12345");
cookies.put("callbackURL", "https://example.com/callback");
cookies.put("debugMode", "true");
cookies.put("version", "1.2.3");
cookies.put("timestamp", "1672531200");
cookies.put("someVeryLongCookieName", "This is a very long cookie value that exceeds the maximum allowed length.");
cookies.put("anotherCookie", "anotherValue");
compactCookies(cookies);
}
}
Add your comment