private static ConversationMemorySnapshot.ConversationStepSnapshot iterateConversationStep(IConversationMemory.IConversationStep conversationStep) { ConversationMemorySnapshot.ConversationStepSnapshot conversationStepSnapshot = new ConversationMemorySnapshot.ConversationStepSnapshot(); if (!conversationStep.isEmpty()) { ConversationMemorySnapshot.PackageRunSnapshot packageRunSnapshot = new ConversationMemorySnapshot.PackageRunSnapshot(); conversationStepSnapshot.getPackages().add(packageRunSnapshot); for (IData data : conversationStep.getAllElements()) { ConversationMemorySnapshot.ResultSnapshot resultSnapshot = new ConversationMemorySnapshot.ResultSnapshot(data.getKey(), data.getResult(), data.getPossibleResults(), data.getTimestamp(), data.isPublic()); packageRunSnapshot.getLifecycleTasks().add(resultSnapshot); } } return conversationStepSnapshot; }