Commit 5ef04b5d authored by Sonia Zorba's avatar Sonia Zorba
Browse files

Managed some rest actions for JavaScript usage

parent 47a0d660
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -5,6 +5,7 @@ import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.ArrayList;
import java.util.List;


/**
/**
 *
 *
@@ -80,7 +81,7 @@ public class TapSchemaDL {
        return allTAPSchemas;
        return allTAPSchemas;
    }
    }


    public static void loadSelectedSchemas(final Connection connection, TapSchema tapSchema, ArrayList<String> selectedSchemas) throws SQLException {
    public static void loadSelectedSchemas(final Connection connection, TapSchema tapSchema, List<String> selectedSchemas) throws SQLException {
        for (String schemaName : selectedSchemas) {
        for (String schemaName : selectedSchemas) {
            Schema schema = new Schema(connection, schemaName, tapSchema.getName(), tapSchema.toCreate());
            Schema schema = new Schema(connection, schemaName, tapSchema.getName(), tapSchema.toCreate());
            schema.setStatus(Status.SELECTED_TO_SAVE);
            schema.setStatus(Status.SELECTED_TO_SAVE);
+2 −1
Original line number Original line Diff line number Diff line
@@ -25,8 +25,9 @@ public abstract class EditablesContainer {
        supportedValues = Arrays.asList(params);
        supportedValues = Arrays.asList(params);
    }
    }


    public void setValue(String key, String value) {
    public boolean setValue(String key, String value) {
        edits.put(key, value);
        edits.put(key, value);
        return isChanged(key);
    }
    }


    public abstract String getOriginalValue(String key);
    public abstract String getOriginalValue(String key);
+2 −1
Original line number Original line Diff line number Diff line
@@ -3,6 +3,7 @@ package it.inaf.oats.ia2.tap.tsm.model;
import java.sql.Connection;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.ArrayList;
import java.util.List;


/**
/**
 *
 *
@@ -14,7 +15,7 @@ public interface IDbEntitiesContainer {
    public ArrayList<String> getAddables();
    public ArrayList<String> getAddables();


    //public boolean canAdd();
    //public boolean canAdd();
    public void loadEntities(Connection connection, ArrayList<String> selectedEntities) throws SQLException;
    public void loadEntities(Connection connection, List<String> selectedEntities) throws SQLException;


    public void addEntity(String name, IDbEntity entity);
    public void addEntity(String name, IDbEntity entity);
    
    
+18 −6
Original line number Original line Diff line number Diff line
@@ -7,6 +7,7 @@ import java.sql.SQLException;
import java.util.ArrayList;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map;


/**
/**
@@ -54,12 +55,13 @@ public class Schema extends EditablesContainer implements IDbEntity, IDbEntities
    }
    }


    @Override
    @Override
    public void loadEntities(Connection connection, ArrayList<String> selectedTables) throws SQLException {
    public void loadEntities(Connection connection, List<String> selectedTables) throws SQLException {
        for (String tableName : selectedTables) {
        for (String tableName : selectedTables) {
            Table table = SchemaDL.loadTable(connection, tapSchemaName, this, tableName);
            Table table = SchemaDL.loadTable(connection, tapSchemaName, this, tableName);
            table.setStatus(Status.SELECTED_TO_SAVE);
            table.setStatus(Status.SELECTED_TO_SAVE);
            addEntity(tableName, table);
            addEntity(tableName, table);
        }
        }
        select(selectedTables.get(selectedTables.size() - 1));
    }
    }


    public Table getTable(String tableName) {
    public Table getTable(String tableName) {
@@ -100,10 +102,9 @@ public class Schema extends EditablesContainer implements IDbEntity, IDbEntities
        tablesMap.put(tableName, (Table) table);
        tablesMap.put(tableName, (Table) table);
    }
    }


    public Collection<String> getTablesNames() {
//    public Collection<String> getTablesNames() {
        return tablesMap.keySet();
//        return tablesMap.keySet();
    }
//    }

    @Override
    @Override
    public ArrayList<IDbEntity> getAllEntities() {
    public ArrayList<IDbEntity> getAllEntities() {
        ArrayList<IDbEntity> list = new ArrayList<IDbEntity>();
        ArrayList<IDbEntity> list = new ArrayList<IDbEntity>();
@@ -146,6 +147,10 @@ public class Schema extends EditablesContainer implements IDbEntity, IDbEntities
        }
        }
        if (table.getStatus() == Status.SELECTED_TO_SAVE) {
        if (table.getStatus() == Status.SELECTED_TO_SAVE) {
            tablesMap.put(tableName, null);
            tablesMap.put(tableName, null);
            ArrayList<IDbEntity> entities = getAllEntities();
            if (!entities.isEmpty()) {
                select(entities.get(0).getName());
            }
        }
        }
    }
    }


@@ -177,5 +182,12 @@ public class Schema extends EditablesContainer implements IDbEntity, IDbEntities
    @Override
    @Override
    public void select(String name) {
    public void select(String name) {
        selectedTable = name;
        selectedTable = name;

        // select first column
        Table table = tablesMap.get(selectedTable);
        ArrayList<IDbEntity> columns = table.getAllEntities();
        if (!columns.isEmpty()) {
            table.select(columns.get(0).getName());
        }
    }
    }
}
}
+7 −1
Original line number Original line Diff line number Diff line
@@ -6,6 +6,7 @@ import java.sql.Connection;
import java.sql.SQLException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map;


/**
/**
@@ -114,10 +115,11 @@ public class Table extends EditablesContainer implements IDbEntity, IDbEntitiesC
    }
    }


    @Override
    @Override
    public void loadEntities(Connection connection, ArrayList<String> selectedEntities) throws SQLException {
    public void loadEntities(Connection connection, List<String> selectedEntities) throws SQLException {
        for (String columnName : selectedEntities) {
        for (String columnName : selectedEntities) {
            getColumn(columnName).setStatus(Status.SELECTED_TO_SAVE);
            getColumn(columnName).setStatus(Status.SELECTED_TO_SAVE);
        }
        }
        select(selectedEntities.get(selectedEntities.size() - 1));
    }
    }


    @Override
    @Override
@@ -127,6 +129,10 @@ public class Table extends EditablesContainer implements IDbEntity, IDbEntitiesC
            column.setStatus(Status.TO_REMOVE);
            column.setStatus(Status.TO_REMOVE);
        } else {
        } else {
            column.setStatus(Status.NOT_SELECTED);
            column.setStatus(Status.NOT_SELECTED);
            ArrayList<IDbEntity> entities = getAllEntities();
            if (!entities.isEmpty()) {
                select(entities.get(0).getName());
            }
        }
        }
    }
    }


Loading