public static   Insert prepareInsert(Object t, String keyspace, String table,String w_cl) {
        Insert insert = QueryBuilder.insertInto(keyspace, table);
        Class<?> c = t.getClass();
        try {
            for (Field f : c.getDeclaredFields()) {
                f.setAccessible(true);
                if (f.get(t) != null) {
                    switch (f.get(t).getClass().getSimpleName()) {
                        case TypeEnum.DATE:
                            insert.value(f.getName(), ((Date)f.get(t)).getTime());
                            break;
                        case TypeEnum.INT:
                            insert.value(f.getName(), f.getInt(t));
                            break;
                        case TypeEnum.STRING:
                            insert.value(f.getName(), f.get(t).toString());
                            break;
                        case TypeEnum.LONG:
                            insert.value(f.getName(), f.getLong(t));
                            break;
                    }
                }
            }
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }
        insert.setConsistencyLevel(ConsistencyLevel.valueOf(w_cl));
        return insert;
    }