use of jp.ossc.nimbus.beans.dataset.Record in project nimbus by nimbus-org.
the class DataSetXpathConverterTest method testConvertToObject.
public void testConvertToObject() {
DataSet inputDataSet = new DataSetXPathConverterTestDataSet();
// 初期データ設定
Header inputHeader = inputDataSet.getHeader();
inputHeader.setProperty(DataSetXPathConverterTestDataSet.PROPERTY0, "PROP0");
inputHeader.setParseProperty(DataSetXPathConverterTestDataSet.PROPERTY1, "PROP1");
BindingStreamConverter converter = new DataSetXpathConverter();
DataSetXPathConverterTestDataSet dataSet = (DataSetXPathConverterTestDataSet) converter.convertToObject(createTestData(), inputDataSet);
Header header = dataSet.getHeader();
RecordList recordList = dataSet.getRecordList();
// 初期データ取得
Assert.assertEquals("PROP0", header.get(DataSetXPathConverterTestDataSet.PROPERTY0));
// 属性取得
Assert.assertEquals("ATTR", header.get(DataSetXPathConverterTestDataSet.PROPERTY1));
// 属性値による指定ノード取得
Assert.assertEquals("テキスト2-3", header.get(DataSetXPathConverterTestDataSet.PROPERTY2));
// ノードインデックスによる指定ノード取得
Assert.assertEquals("ATTR1", header.get(DataSetXPathConverterTestDataSet.PROPERTY3));
// 子ノード取得
for (int i = 0; i < recordList.size(); i++) {
Record record = (Record) recordList.get(i);
Assert.assertEquals("テキスト" + (i + 1) + "-1", record.get(DataSetXPathConverterTestDataSet.PROPERTY4));
Assert.assertEquals("テキスト" + (i + 1) + "-2", record.get(DataSetXPathConverterTestDataSet.PROPERTY5));
Assert.assertEquals("テキスト" + (i + 1) + "-3", record.get(DataSetXPathConverterTestDataSet.PROPERTY6));
}
}
use of jp.ossc.nimbus.beans.dataset.Record in project nimbus by nimbus-org.
the class DatabaseAuthenticateStoreService method activate.
public Object activate(HttpServletRequest request, Object authenticatedKey) throws AuthenticateStoreException {
if (selectQueryOnFindUser == null) {
return null;
}
Connection con = null;
try {
con = connectionFactory.getConnection();
} catch (ConnectionFactoryException e) {
throw new AuthenticateStoreException(e);
}
try {
Object authenticatedInfo = null;
if (selectQueryOnFindUser != null) {
if (authenticatedInfoClass != null) {
List list = (List) persistentManager.loadQuery(con, selectQueryOnFindUser, createInput(request, null, authenticatedKey), authenticatedInfoClass);
if (list.size() == 0) {
return null;
}
authenticatedInfo = list.get(0);
} else {
if (authenticatedInfoTemplate instanceof DataSet) {
authenticatedInfo = ((DataSet) authenticatedInfoTemplate).cloneSchema();
} else if (authenticatedInfoTemplate instanceof RecordList) {
authenticatedInfo = ((RecordList) authenticatedInfoTemplate).cloneSchema();
} else if (authenticatedInfoTemplate instanceof Record) {
authenticatedInfo = ((Record) authenticatedInfoTemplate).cloneSchema();
} else if (authenticatedInfoTemplate instanceof Cloneable) {
try {
authenticatedInfo = authenticatedInfoTemplate.getClass().getMethod("clone", (Class[]) null).invoke(authenticatedInfoTemplate, (Object[]) null);
} catch (NoSuchMethodException e) {
throw new AuthenticateStoreException(e);
} catch (IllegalAccessException e) {
throw new AuthenticateStoreException(e);
} catch (InvocationTargetException e) {
throw new AuthenticateStoreException(e);
}
}
authenticatedInfo = persistentManager.loadQuery(con, selectQueryOnFindUser, createInput(request, null, authenticatedKey), authenticatedInfo);
}
}
if (authenticatedInfo != null && updateQueryOnActivate != null) {
if (request.getSession(false) == null) {
request.getSession(true);
}
persistentManager.persistQuery(con, updateQueryOnActivate, createInput(request, null, authenticatedInfo));
}
return authenticatedInfo;
} catch (PersistentException e) {
throw new AuthenticateStoreException(e);
} finally {
try {
con.close();
} catch (SQLException e) {
}
}
}
Aggregations