Permalink
Browse files

insertion/removal thread

  • Loading branch information...
1 parent 107e39a commit d3b2e6699813e3929a1c38b843e5402939e22aaa @lfern committed Mar 29, 2012
@@ -0,0 +1,88 @@
+/**
+ * Dnieprov es una librería que implementa un driver en JAVA para el DNI
+ * electrónico y un proveedor cryptográfico compatible con la JCA de Java.
+ * Código fuente disponible en http://github.com/lfern/dnieprov
+ *
+ * Copyright 2012 Luis Fernando Pardo Fincias
+ *
+ * Este fichero se distribuye bajo una licencia dúal: LGPL 3.0 y EUPL 1.1:
+ * - GNU Lesser General Public License (LGPL), version 3.0
+ * - European Union Public Licence (EUPL), version 1.1
+ * ----------------------------------------------------------------------
+ * Si se decide por la licencia LGPL, se aplica el siguiente aviso:
+ *
+ * This program is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see http://www.gnu.org/licenses/
+ *
+ * ----------------------------------------------------------------------*
+ * Si se decide por la licencia EUPL se aplica este otro:
+ *
+ * Licencia con arreglo a la EUPL, Versión 1.1 exclusivamente (la "Licencia");
+ * Solo podrá usarse esta obra si se respeta la Licencia.
+ * Puede obtenerse una copia de la Licencia en:
+ * http://ec.europa.eu/idabc/eupl.html
+ * El programa distribuido con arreglo a la Licencia se distribuye "TAL CUAL",
+ * SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ni expresas ni implícitas.
+ * ----------------------------------------------------------------------*
+ */
+package org.dnieprov.driver;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+
+/**
+ *
+ * @author luis
+ */
+public class DnieCardList {
+ private ArrayList<DnieCard> cardList;
+
+ public DnieCardList(){
+ cardList = new ArrayList();
+ }
+
+ public ArrayList<DnieCard> arrayListCopy(){
+ ArrayList<DnieCard> newList = new ArrayList();
+ synchronized (this) {
+ for (int i=0;i<cardList.size();i++){
+ newList.add(cardList.get(i));
+ }
+ }
+ return newList;
+ }
+
+ public void clear(){
+ synchronized (this) {
+ for (int i=cardList.size()-1;i>=0;i--){
+ cardList.get(i).getCardImpl().invalidate();
+ cardList.remove(i);
+ }
+ }
+
+ }
+
+ public void add(DnieCard card){
+ synchronized (this) {
+ cardList.add(card);
+ }
+ }
+
+ public Iterator<DnieCard> iterator(){
+ ArrayList newList = arrayListCopy();
+ return newList.iterator();
+ }
+
+ public void remove(DnieCard card){
+ synchronized (this) {
+ cardList.remove(card);
+ }
+ }
+}
@@ -0,0 +1,28 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.dnieprov.driver.exceptions;
+
+/**
+ *
+ * @author luis
+ */
+public class InvalidCardException extends Exception{
+
+ public InvalidCardException(Throwable cause) {
+ super(cause);
+ }
+
+ public InvalidCardException(String message, Throwable cause) {
+ super(message, cause);
+ }
+
+ public InvalidCardException(String message) {
+ super(message);
+ }
+
+ public InvalidCardException() {
+ }
+
+}

0 comments on commit d3b2e66

Please sign in to comment.