Resolved merge conflicts

revert-70aa11f8
Dileesha Rajapakse 9 years ago
commit d6a30daac1

@ -23,6 +23,7 @@ import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
import org.wso2.carbon.device.mgt.common.EnrolmentInfo;
import org.wso2.carbon.device.mgt.common.EnrolmentInfo.Status;
import org.wso2.carbon.device.mgt.common.PaginationResult;
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
import java.util.HashMap;
import java.util.List;
@ -163,6 +164,14 @@ public interface DeviceDAO {
*/
int getDeviceCount(int tenantId) throws DeviceManagementDAOException;
/**
* This method is used to retrieve the available device types of a given tenant.
*
* @return returns list of device types.
* @throws DeviceManagementDAOException
*/
List<DeviceType> getDeviceTypes() throws DeviceManagementDAOException;
/**
* This method is used to retrieve devices of a given device name.
*

@ -24,6 +24,7 @@ import org.wso2.carbon.device.mgt.common.PaginationResult;
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOException;
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOFactory;
import org.wso2.carbon.device.mgt.core.dao.util.DeviceManagementDAOUtil;
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
import java.sql.Connection;
import java.sql.PreparedStatement;
@ -120,7 +121,33 @@ public class GenericDeviceDAOImpl extends AbstractDeviceDAOImpl {
return result;
}
private Connection getConnection() throws SQLException {
@Override
public List<DeviceType> getDeviceTypes()
throws DeviceManagementDAOException {
Connection conn;
PreparedStatement stmt = null;
ResultSet rs = null;
List<DeviceType> deviceTypes;
try {
conn = this.getConnection();
String sql = "SELECT t.ID, t.NAME " +
"FROM DM_DEVICE_TYPE t";
stmt = conn.prepareStatement(sql);
rs = stmt.executeQuery();
deviceTypes = new ArrayList<>();
while (rs.next()) {
DeviceType deviceType = DeviceManagementDAOUtil.loadDeviceType(rs);
deviceTypes.add(deviceType);
}
} catch (SQLException e) {
throw new DeviceManagementDAOException("Error occurred while listing device types.", e);
} finally {
DeviceManagementDAOUtil.cleanupResources(stmt, rs);
}
return deviceTypes;
}
private Connection getConnection() throws SQLException {
return DeviceManagementDAOFactory.getConnection();
}
}

@ -23,6 +23,7 @@ import org.wso2.carbon.device.mgt.common.PaginationResult;
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOException;
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOFactory;
import org.wso2.carbon.device.mgt.core.dao.util.DeviceManagementDAOUtil;
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
import java.sql.Connection;
import java.sql.PreparedStatement;
@ -116,7 +117,31 @@ public class OracleDeviceDAOImpl extends AbstractDeviceDAOImpl {
return result;
}
private Connection getConnection() throws SQLException {
@Override public List<DeviceType> getDeviceTypes() throws DeviceManagementDAOException {
Connection conn;
PreparedStatement stmt = null;
ResultSet rs = null;
List<DeviceType> deviceTypes;
try {
conn = this.getConnection();
String sql = "SELECT t.ID, t.NAME " +
"FROM DM_DEVICE_TYPE t";
stmt = conn.prepareStatement(sql);
rs = stmt.executeQuery();
deviceTypes = new ArrayList<>();
while (rs.next()) {
DeviceType deviceType = DeviceManagementDAOUtil.loadDeviceType(rs);
deviceTypes.add(deviceType);
}
} catch (SQLException e) {
throw new DeviceManagementDAOException("Error occurred while listing device types.", e);
} finally {
DeviceManagementDAOUtil.cleanupResources(stmt, rs);
}
return deviceTypes;
}
private Connection getConnection() throws SQLException {
return DeviceManagementDAOFactory.getConnection();
}
}

@ -23,6 +23,7 @@ import org.wso2.carbon.device.mgt.common.PaginationResult;
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOException;
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOFactory;
import org.wso2.carbon.device.mgt.core.dao.util.DeviceManagementDAOUtil;
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
import java.sql.Connection;
import java.sql.PreparedStatement;
@ -116,7 +117,31 @@ public class PostgreSQLDeviceDAOImpl extends AbstractDeviceDAOImpl {
return result;
}
private Connection getConnection() throws SQLException {
@Override public List<DeviceType> getDeviceTypes() throws DeviceManagementDAOException {
Connection conn;
PreparedStatement stmt = null;
ResultSet rs = null;
List<DeviceType> deviceTypes;
try {
conn = this.getConnection();
String sql = "SELECT t.ID, t.NAME " +
"FROM DM_DEVICE_TYPE t";
stmt = conn.prepareStatement(sql);
rs = stmt.executeQuery();
deviceTypes = new ArrayList<>();
while (rs.next()) {
DeviceType deviceType = DeviceManagementDAOUtil.loadDeviceType(rs);
deviceTypes.add(deviceType);
}
} catch (SQLException e) {
throw new DeviceManagementDAOException("Error occurred while listing device types.", e);
} finally {
DeviceManagementDAOUtil.cleanupResources(stmt, rs);
}
return deviceTypes;
}
private Connection getConnection() throws SQLException {
return DeviceManagementDAOFactory.getConnection();
}
}

@ -23,6 +23,7 @@ import org.wso2.carbon.device.mgt.common.PaginationResult;
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOException;
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOFactory;
import org.wso2.carbon.device.mgt.core.dao.util.DeviceManagementDAOUtil;
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
import java.sql.Connection;
import java.sql.PreparedStatement;
@ -116,7 +117,32 @@ public class SQLServerDeviceDAOImpl extends AbstractDeviceDAOImpl {
return result;
}
private Connection getConnection() throws SQLException {
@Override
public List<DeviceType> getDeviceTypes() throws DeviceManagementDAOException {
Connection conn;
PreparedStatement stmt = null;
ResultSet rs = null;
List<DeviceType> deviceTypes;
try {
conn = this.getConnection();
String sql = "SELECT t.ID, t.NAME " +
"FROM DM_DEVICE_TYPE t";
stmt = conn.prepareStatement(sql);
rs = stmt.executeQuery();
deviceTypes = new ArrayList<>();
while (rs.next()) {
DeviceType deviceType = DeviceManagementDAOUtil.loadDeviceType(rs);
deviceTypes.add(deviceType);
}
} catch (SQLException e) {
throw new DeviceManagementDAOException("Error occurred while listing device types.", e);
} finally {
DeviceManagementDAOUtil.cleanupResources(stmt, rs);
}
return deviceTypes;
}
private Connection getConnection() throws SQLException {
return DeviceManagementDAOFactory.getConnection();
}
}

@ -23,6 +23,7 @@ import org.wso2.carbon.context.CarbonContext;
import org.wso2.carbon.device.mgt.common.Device;
import org.wso2.carbon.device.mgt.common.EnrolmentInfo;
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOException;
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
import org.wso2.carbon.device.mgt.core.internal.DeviceManagementDataHolder;
import org.wso2.carbon.user.api.UserStoreException;
import org.wso2.carbon.user.core.tenant.TenantManager;
@ -153,4 +154,11 @@ public final class DeviceManagementDAOUtil {
device.setEnrolmentInfo(loadEnrolment(rs));
return device;
}
public static DeviceType loadDeviceType(ResultSet rs) throws SQLException {
DeviceType deviceType = new DeviceType();
deviceType.setId(rs.getInt("ID"));
deviceType.setName(rs.getString("NAME"));
return deviceType;
}
}

@ -24,6 +24,8 @@ import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfiguration;
import org.wso2.carbon.device.mgt.common.license.mgt.License;
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManager;
import org.wso2.carbon.device.mgt.common.operation.mgt.OperationManager;
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
import java.util.List;
/**
@ -127,6 +129,8 @@ public interface DeviceManagementProviderService extends OperationManager {
Device getDevice(DeviceIdentifier deviceId) throws DeviceManagementException;
List<DeviceType> getAvailableDeviceTypes() throws DeviceManagementException;
boolean updateDeviceInfo(DeviceIdentifier deviceIdentifier, Device device) throws DeviceManagementException;
boolean setOwnership(DeviceIdentifier deviceId, String ownershipType) throws DeviceManagementException;

@ -617,7 +617,23 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv
return device;
}
@Override
@Override
public List<DeviceType> getAvailableDeviceTypes() throws DeviceManagementException {
List<DeviceType> deviceTypes;
try {
DeviceManagementDAOFactory.openConnection();
deviceTypes = deviceDAO.getDeviceTypes();
} catch (DeviceManagementDAOException e) {
throw new DeviceManagementException("Error occurred while obtaining the device types.", e);
} catch (SQLException e) {
throw new DeviceManagementException("Error occurred while opening a connection to the data source", e);
} finally {
DeviceManagementDAOFactory.closeConnection();
}
return deviceTypes;
}
@Override
public boolean updateDeviceInfo(DeviceIdentifier deviceId, Device device) throws DeviceManagementException {
DeviceManager deviceManager = this.getDeviceManager(deviceId.getType());
if (deviceManager == null) {

@ -123,7 +123,7 @@ public class DynamicClientRegistrationServiceImpl implements DynamicClientRegist
boolean isSaaSApp = profile.isSaasApp();
String audience = profile.getAudience();
String assertionConsumerURL = profile.getAssertionConsumerURL();
String recepientValidationURL = profile.getRecepientValidationURL();
String recipientValidationURL = profile.getRecepientValidationURL();
if (userId == null || userId.isEmpty()) {
return null;
@ -223,7 +223,7 @@ public class DynamicClientRegistrationServiceImpl implements DynamicClientRegist
samlssoServiceProviderDTO.setDoSignResponse(true);
samlssoServiceProviderDTO.setRequestedAudiences(new String[] { audience });
samlssoServiceProviderDTO.setDefaultAssertionConsumerUrl(assertionConsumerURL);
samlssoServiceProviderDTO.setRequestedRecipients(new String[] {recepientValidationURL});
samlssoServiceProviderDTO.setRequestedRecipients(new String[] {recipientValidationURL});
samlssoServiceProviderDTO.setDoSignAssertions(true);

@ -117,7 +117,7 @@ public class DynamicClientWebAppRegistrationManager {
}
public void initiateDynamicClientRegistration() {
String requiredDynamicClientRegistration, webAppName;
String requiredDynamicClientRegistration, webAppName, serviceProviderName;
ServletContext servletContext;
RegistrationProfile registrationProfile;
OAuthAppDetails oAuthAppDetails;
@ -131,15 +131,15 @@ public class DynamicClientWebAppRegistrationManager {
while (enumeration.hasMoreElements()) {
oAuthAppDetails = new OAuthAppDetails();
webAppName = (String) enumeration.nextElement();
serviceProviderName = DynamicClientWebAppRegistrationUtil.getUserName() + "_" + webAppName;
servletContext = DynamicClientWebAppRegistrationManager.webAppContexts.get(webAppName);
requiredDynamicClientRegistration = servletContext.getInitParameter(
DynamicClientWebAppRegistrationConstants.DYNAMIC_CLIENT_REQUIRED_FLAG);
//Java web-app section
if ((requiredDynamicClientRegistration != null) && (Boolean.
parseBoolean(
requiredDynamicClientRegistration))) {
if ((requiredDynamicClientRegistration != null) && (Boolean.parseBoolean(
requiredDynamicClientRegistration))) {
//Check whether this is an already registered application
if (!dynamicClientWebAppRegistrationManager.isRegisteredOAuthApplication(webAppName)) {
if (!dynamicClientWebAppRegistrationManager.isRegisteredOAuthApplication(serviceProviderName)) {
//Construct the RegistrationProfile
registrationProfile = DynamicClientWebAppRegistrationUtil.
constructRegistrationProfile(servletContext, webAppName);
@ -155,7 +155,7 @@ public class DynamicClientWebAppRegistrationManager {
JaggeryOAuthConfigurationSettings jaggeryOAuthConfigurationSettings =
DynamicClientWebAppRegistrationUtil.getJaggeryAppOAuthSettings(servletContext);
if (jaggeryOAuthConfigurationSettings.isRequireDynamicClientRegistration()) {
if (!dynamicClientWebAppRegistrationManager.isRegisteredOAuthApplication(webAppName)) {
if (!dynamicClientWebAppRegistrationManager.isRegisteredOAuthApplication(serviceProviderName)) {
registrationProfile = DynamicClientWebAppRegistrationUtil.
constructRegistrationProfile(jaggeryOAuthConfigurationSettings,
webAppName);

@ -116,7 +116,7 @@ public class DynamicClientWebAppRegistrationUtil {
resource.setContent(writer.toString());
resource.setMediaType(DynamicClientWebAppRegistrationConstants.ContentTypes.MEDIA_TYPE_XML);
String resourcePath = DynamicClientWebAppRegistrationConstants.OAUTH_APP_DATA_REGISTRY_PATH + "/" +
oAuthAppDetails.getWebAppName();
oAuthAppDetails.getClientName();
status = DynamicClientWebAppRegistrationUtil.putRegistryResource(resourcePath, resource);
} catch (RegistryException e) {
throw new DynamicClientRegistrationException(

@ -62,6 +62,8 @@ public class MonitoringManagerImpl implements MonitoringManager {
private static final Log log = LogFactory.getLog(MonitoringManagerImpl.class);
private static final String OPERATION_MONITOR = "MONITOR";
private static final String OPERATION_INFO = "DEVICE_INFO";
private static final String OPERATION_APP_LIST = "APPLICATION_LIST";
public MonitoringManagerImpl() {
this.policyDAO = PolicyManagementDAOFactory.getPolicyDAO();
@ -378,9 +380,19 @@ public class MonitoringManagerImpl implements MonitoringManager {
monitoringOperation.setEnabled(true);
monitoringOperation.setType(Operation.Type.COMMAND);
monitoringOperation.setCode(OPERATION_MONITOR);
CommandOperation infoOperation = new CommandOperation();
infoOperation.setEnabled(true);
infoOperation.setType(Operation.Type.COMMAND);
infoOperation.setCode(OPERATION_INFO);
CommandOperation appListOperation = new CommandOperation();
appListOperation.setEnabled(true);
appListOperation.setType(Operation.Type.COMMAND);
appListOperation.setCode(OPERATION_APP_LIST);
DeviceManagementProviderService service = new DeviceManagementProviderServiceImpl();
service.addOperation(monitoringOperation, deviceIdentifiers);
service.addOperation(infoOperation, deviceIdentifiers);
service.addOperation(appListOperation, deviceIdentifiers);
}
private List<DeviceIdentifier> getDeviceIdentifiersFromDevices(List<Device> devices) {

@ -102,7 +102,8 @@ public class OAuthAuthenticator implements WebappAuthenticator {
resourceContextParam.setValue(requestUri + ":" + requestMethod);
OAuth2TokenValidationRequestDTO.TokenValidationContextParam[]
tokenValidationContextParams = new OAuth2TokenValidationRequestDTO.TokenValidationContextParam[1];
tokenValidationContextParams =
new OAuth2TokenValidationRequestDTO.TokenValidationContextParam[1];
tokenValidationContextParams[0] = resourceContextParam;
dto.setContext(tokenValidationContextParams);
@ -110,14 +111,9 @@ public class OAuthAuthenticator implements WebappAuthenticator {
AuthenticatorFrameworkDataHolder.getInstance().getoAuth2TokenValidationService().validate(dto);
if (oAuth2TokenValidationResponseDTO.isValid()) {
String username = oAuth2TokenValidationResponseDTO.getAuthorizedUser();
// try {
authenticationInfo.setUsername(username);
authenticationInfo.setTenantDomain(MultitenantUtils.getTenantDomain(username));
authenticationInfo.setTenantId(Utils.getTenantIdOFUser(username));
// } catch (AuthenticationException e) {
// throw new AuthenticationException(
// "Error occurred while retrieving the tenant ID of user '" + username + "'", e);
// }
authenticationInfo.setUsername(username);
authenticationInfo.setTenantDomain(MultitenantUtils.getTenantDomain(username));
authenticationInfo.setTenantId(Utils.getTenantIdOFUser(username));
if (oAuth2TokenValidationResponseDTO.isValid()) {
authenticationInfo.setStatus(Status.CONTINUE);
}
@ -148,7 +144,7 @@ public class OAuthAuthenticator implements WebappAuthenticator {
tokenValue = tokenValue.substring(matcher.end());
}
}
if(log.isDebugEnabled()) {
if (log.isDebugEnabled()) {
log.debug("Oauth Token : " + tokenValue);
}
return tokenValue;

@ -355,8 +355,8 @@ CREATE TABLE IF NOT EXISTS DM_ENROLMENT (
CREATE TABLE IF NOT EXISTS DM_APPLICATION (
ID INTEGER AUTO_INCREMENT NOT NULL,
NAME VARCHAR(50) NOT NULL,
APP_IDENTIFIER VARCHAR(50) NOT NULL,
NAME VARCHAR(150) NOT NULL,
APP_IDENTIFIER VARCHAR(150) NOT NULL,
PLATFORM VARCHAR(50) DEFAULT NULL,
CATEGORY VARCHAR(50) NULL,
VERSION VARCHAR(50) NULL,

@ -358,7 +358,7 @@ CREATE TABLE DM_ENROLMENT (
CREATE TABLE DM_APPLICATION (
ID INTEGER IDENTITY NOT NULL,
NAME VARCHAR(50) NOT NULL,
NAME VARCHAR(150) NOT NULL,
APP_IDENTIFIER VARCHAR(150) NOT NULL,
PLATFORM VARCHAR(50) DEFAULT NULL,
CATEGORY VARCHAR(50) NULL,
@ -400,5 +400,3 @@ CREATE TABLE DM_NOTIFICATION (
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
);
-- NOTIFICATION TABLE END --

@ -352,7 +352,7 @@ CREATE TABLE IF NOT EXISTS DM_ENROLMENT (
CREATE TABLE IF NOT EXISTS DM_APPLICATION (
ID INTEGER AUTO_INCREMENT NOT NULL,
NAME VARCHAR(50) NOT NULL,
NAME VARCHAR(150) NOT NULL,
APP_IDENTIFIER VARCHAR(150) NOT NULL,
PLATFORM VARCHAR(50) DEFAULT NULL,
CATEGORY VARCHAR(50) NULL,
@ -398,4 +398,3 @@ CREATE TABLE IF NOT EXISTS DM_NOTIFICATION (
-- END NOTIFICATION TABLES --

@ -551,7 +551,7 @@ END;
CREATE TABLE DM_APPLICATION (
ID NUMBER(10) NOT NULL,
NAME VARCHAR2(50) NOT NULL,
NAME VARCHAR2(150) NOT NULL,
APP_IDENTIFIER VARCHAR2(150) NOT NULL,
PLATFORM VARCHAR2(50) DEFAULT NULL,
CATEGORY VARCHAR2(50) NULL,

@ -309,7 +309,7 @@ CREATE TABLE IF NOT EXISTS DM_ENROLMENT (
CREATE TABLE IF NOT EXISTS DM_APPLICATION (
ID BIGSERIAL NOT NULL PRIMARY KEY,
NAME VARCHAR(50) NOT NULL,
NAME VARCHAR(150) NOT NULL,
APP_IDENTIFIER VARCHAR(150) NOT NULL,
PLATFORM VARCHAR(50) DEFAULT NULL,
CATEGORY VARCHAR(50) NULL,

Loading…
Cancel
Save