Estou com um problema que nem sei se tem solução!
A quem puder me ajudar agradeço pois sou iniciante e não conheço nem metade do que está por vir.
Meu problema é o seguinte:
Existem 02 sistemas de informação trabalhando em conjunto:
1)Sistema Fornecedor De Palavras - Fornece listas que serão usadas por outro sistema. Este sistema cria listas com palavras aleatórias
e envia para o Sistema Gerador Gerador de Domínios uma nova lista nos seguintes minutos de cada hora: 3, 7, 11, 13, 17.2) Sistema Gerador de Domínios - Gera domínios usando palavras. Esse sistema vai apresentar essas palavras no console todas as vezes em que ele recebe uma lista de palavras.
Só que eu não consigo mudar a lista a cada minuto. Precisaria de algum comando para imprimir sempre a próxima lista. E o código que usei imprime uma específica sempre.
Meus códigos:
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class SistemaFornecedorDePalavras {
public static void main(String[] args) throws InterruptedException {
// vamos chamar um método para iniciar o Sistema
iniciar();
}
public static void iniciar() throws InterruptedException {
// criei esse método para iniciar o Sistema...
// agora vamos, dentro desse método:
// 1)Observar a hora;
// 2)quando chegar a hora especifica enviar uma lista de palavras;
int minutos = 0;
while (minutos < 60) {
Date d = new Date(); // data atual da máquina
int minuto = d.getSeconds();
if (minuto == 3 || minuto == 7 || minuto == 11 || minuto == 13 || minuto == 17) {
enviar_lista_de_palavras();
}
Thread.sleep(1000); // 1 Segundo = 1000 Milissegundos || 1 Minuto = 60000 Milissegundos
} // while termina aqui
}
public static void enviar_lista_de_palavras() throws InterruptedException {
List listas;
List lista_1;
List lista_2;
List lista_3;
listas = gerar_lista_de_palavras();
SistemaGeradorDeDominios.receba_a_lista(listas);
}
public static List gerar_lista_de_palavras() {
List<String> lista_1 = new ArrayList<String>();
lista_1.add("registro");
lista_1.add("dominio");
lista_1.add("site");
lista_1.add("portal");
List<String> lista_2 = new ArrayList<String>();
lista_2.add("preto");
lista_2.add("branco");
lista_2.add("claro");
lista_2.add("escuro");
List<String> lista_3 = new ArrayList<String>();
lista_3.add("um");
lista_3.add("dois");
lista_3.add("tres");
lista_3.add("quatro");
List listas = new ArrayList<List>(); // objeto listas
listas.add(lista_1);
listas.add(lista_2);
listas.add(lista_3);
return listas;
}
}
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import com.sun.xml.internal.ws.api.pipe.NextAction;
public class SistemaGeradorDeDominios {
public static void main(String[] args) throws InterruptedException {
List lista = new ArrayList();
receba_a_lista(lista);
}
public static void receba_a_lista(List listas) throws InterruptedException {
System.out.println("\nINICIADO o método receba_a_lista!\n"); // \nserve pra pular uma linha
// percorrer listas e imrpimi-las:
System.out.println("Recebi as palavras abaixo:");
for(int i=0; i<( (List) listas ).size(); i++){
}
System.out.println( ( (List) listas ).get(0) );
System.out.println("\nFINALIZADO o método receba_a_lista!\n");
}
public static void gerar_dominios(Object obj) {
System.out.println("Aguarde! Estou gerando domínios para a palavra "+ obj);
}
}
Observação: coloquei segundos pra verificar o código sem ter que esperar os minutos chegarem
Resultado: