.addAdminMsg(loginReq.name("user").nameType(EmaRdm.USER_NAME).applicationId("127").position("127.0.0.1/net").allowSuspectData(true).message()) .addAdminMsg(reqMsg.domainType(EmaRdm.MMT_DIRECTORY).filter(EmaRdm.SERVICE_INFO_FILTER | EmaRdm.SERVICE_STATE_FILTER | EmaRdm.SERVICE_GROUP_FILTER)) .addAdminMsg(reqMsg.clear().domainType(EmaRdm.MMT_DICTIONARY).filter(EmaRdm.DICTIONARY_VERBOSE).name("RWFFld").serviceId(1))
loginReq.clear().role(EmaRdm.LOGIN_ROLE_PROV).name(authenticationToken).nameType(EmaRdm.USER_AUTH_TOKEN).applicationId(appId); if(authenticationExtended != "") loginReq.authenticationExtended(ByteBuffer.wrap(authenticationExtended.getBytes())); config.addAdminMsg(loginReq.message()); loginReq.clear().role(EmaRdm.LOGIN_ROLE_PROV).name(authenticationToken).nameType(EmaRdm.USER_AUTH_TOKEN).applicationId(appId); if(!authenticationExtended.isEmpty()) loginReq.authenticationExtended(ByteBuffer.wrap(authenticationExtended.getBytes())); provider.reissue(loginReq.message(), appLoginClient.handle);
loginReq.name("UserName"); assertEquals(true, loginReq.hasName()); assertEquals("UserName", loginReq.name()); loginReq.pause(true); assertEquals(true, loginReq.hasPause()); assertEquals(true, loginReq.pause()); loginReq.allowSuspectData(true); assertEquals(true, loginReq.hasAllowSuspectData()); assertEquals(true, loginReq.allowSuspectData()); loginReq.downloadConnectionConfig(true); assertEquals(true, loginReq.hasDownloadConnectionConfig()); assertEquals(true, loginReq.downloadConnectionConfig()); loginReq.applicationId("123"); assertEquals(true, loginReq.hasApplicationId()); assertEquals("123", loginReq.applicationId());
loginReq.allowSuspectData(false); loginReq.downloadConnectionConfig(true); loginReq.providePermissionProfile(false); loginReq.providePermissionExpressions(false); loginReq.singleOpen(false); loginReq.supportProviderDictionaryDownload(true); loginReq.role(EmaRdm.LOGIN_ROLE_PROV); loginReq.applicationId("AppId"); loginReq.applicationName("AppName"); loginReq.applicationAuthorizationToken("AppAuthToken"); loginReq.instanceId("InstanceId"); loginReq.password("12345"); loginReq.position("Position"); loginReq.authenticationExtended(ByteBuffer.wrap("AuthExtended".getBytes())); loginReq.name("Name"); loginReq.nameType(EmaRdm.USER_EMAIL_ADDRESS); loginReq.pause(true); assertEquals(true, loginReq.hasAllowSuspectData()); assertEquals(false, loginReq.allowSuspectData()); assertEquals(true, loginReq.hasDownloadConnectionConfig()); assertEquals(true, loginReq.downloadConnectionConfig()); assertEquals(true, loginReq.hasProvidePermissionProfile()); assertEquals(false, loginReq.providePermissionProfile()); assertEquals(true, loginReq.hasProvidePermissionExpressions()); assertEquals(false, loginReq.providePermissionExpressions()); assertEquals(true, loginReq.hasSingleOpen()); assertEquals(false, loginReq.singleOpen()); assertEquals(true, loginReq.hasSupportProviderDictionaryDownload());
loginReq.message(decReqMsg); assertEquals(true, loginReq.hasAllowSuspectData()); assertEquals(true, loginReq.allowSuspectData()); assertEquals(true, loginReq.hasDownloadConnectionConfig()); assertEquals(true, loginReq.downloadConnectionConfig()); assertEquals(true, loginReq.hasApplicationId()); assertEquals("123", loginReq.applicationId()); assertEquals(true, loginReq.hasApplicationName()); assertEquals("application name test", loginReq.applicationName()); assertEquals(true, loginReq.hasApplicationAuthorizationToken()); assertEquals("application authentication token", loginReq.applicationAuthorizationToken()); assertEquals(true, loginReq.hasInstanceId()); assertEquals("555", loginReq.instanceId()); assertEquals(true, loginReq.hasPassword()); assertEquals("@password", loginReq.password());
loginReq.clear().name(authenticationToken).nameType(EmaRdm.USER_AUTH_TOKEN).applicationId(appId); loginReq.authenticationExtended(ByteBuffer.wrap(authenticationExtended.getBytes())); config.addAdminMsg(loginReq.message()); consumer = EmaFactory.createOmmConsumer(config, appLoginClient); loginReq.clear().name(authenticationToken).nameType(EmaRdm.USER_AUTH_TOKEN).applicationId(appId); loginReq.authenticationExtended(ByteBuffer.wrap(authenticationExtended.getBytes())); consumer.reissue(loginReq.message(), appLoginClient.handle); appLoginClient.ttReissue = 0;
loginReq.applicationId("123"); loginReq.applicationName("name"); loginReq.applicationAuthorizationToken("token"); loginReq.instanceId("id"); loginReq.password("password"); loginReq.position("123.456.789.012"); authenticationExtended = ByteBuffer.allocate(5); authenticationExtended.put("tests".getBytes()); authenticationExtended.flip(); loginReq.authenticationExtended(authenticationExtended); loginReq.message(decReqMsg); assertEquals(false, loginReq.hasApplicationId()); assertEquals(false, loginReq.hasApplicationName()); assertEquals(false, loginReq.hasApplicationAuthorizationToken()); assertEquals(false, loginReq.hasInstanceId()); assertEquals(false, loginReq.hasPassword()); assertEquals(false, loginReq.hasPosition()); assertEquals(false, loginReq.hasAuthenticationExtended());
if ( !loginRequest.name().equals("user") ) if (loginRequest.hasNameType()) loginStatus.nameType(loginRequest.nameType()); event.provider().submit( loginStatus.name(loginRequest.name()). state(OmmState.StreamState.CLOSED, OmmState.DataState.SUSPECT, OmmState.StatusCode.NOT_AUTHORIZED, "Login denied"). message(), event.handle() ); if(loginRequest.hasAllowSuspectData()) loginRefresh.allowSuspectData(loginRequest.allowSuspectData()); if(loginRequest.hasSingleOpen()) loginRefresh.singleOpen(loginRequest.singleOpen()); if(loginRequest.hasPosition()) loginRefresh.position(loginRequest.position()); if(loginRequest.hasApplicationId()) loginRefresh.applicationId(loginRequest.applicationId()); if (loginRequest.hasNameType()) loginRefresh.nameType(loginRequest.nameType()); event.provider().submit( loginRefresh.name(loginRequest.name()). state(OmmState.StreamState.OPEN, OmmState.DataState.OK, OmmState.StatusCode.NONE, "Login accepted").message(), event.handle() );
public static void main(String[] args) { OmmConsumer consumer = null; try { AppClient appClient = new AppClient(); consumer = EmaFactory.createOmmConsumer(EmaFactory.createOmmConsumerConfig().host("localhost:14002").username("user")); LoginReq loginReq = EmaFactory.Domain.createLoginReq(); consumer.registerClient(loginReq.message(), appClient); ReqMsg reqMsg = EmaFactory.createReqMsg(); consumer.registerClient(reqMsg.serviceName("DIRECT_FEED").name("IBM.N"), appClient); Thread.sleep(60000); // API calls onRefreshMsg(), onUpdateMsg() and onStatusMsg() } catch (InterruptedException | OmmException excp) { System.out.println(excp.getMessage()); } finally { if (consumer != null) consumer.uninitialize(); } } }
@Test public void errorHandlingLoginRequestTest() { LoginReq loginReq = EmaFactory.Domain.createLoginReq(); exception.expect(OmmInvalidUsageException.class); exception.expectMessage("ApplicationAuthorizationToken element is not set"); loginReq.applicationAuthorizationToken(); exception.expect(OmmInvalidUsageException.class); exception.expectMessage("InstanceId element is not set"); loginReq.instanceId(); exception.expect(OmmInvalidUsageException.class); exception.expectMessage("Password element is not set"); loginReq.password(); exception.expect(OmmInvalidUsageException.class); exception.expectMessage("Position element is not set"); loginReq.position(); exception.expect(OmmInvalidUsageException.class); exception.expectMessage("authenticationExtended element is not set"); loginReq.authenticationExtended(); }
@Test public void decodeLoginReqInvalidTypeTest() { ElementList encodedElementList = EmaFactory.createElementList(); encodedElementList.add( EmaFactory.createElementEntry().ascii(EmaRdm.ENAME_ALLOW_SUSPECT_DATA, "1")); com.thomsonreuters.upa.codec.DataDictionary dictionary = com.thomsonreuters.upa.codec.CodecFactory .createDataDictionary(); TestUtilities.upa_encodeDictionaryMsg(dictionary); ReqMsg encReqMsg = EmaFactory.createReqMsg(); encReqMsg.domainType(EmaRdm.MMT_LOGIN); encReqMsg.attrib(encodedElementList); ReqMsg decReqMsg = JUnitTestConnect.createReqMsg(); JUnitTestConnect.setRsslData(decReqMsg, encReqMsg, Codec.majorVersion(), Codec.minorVersion(), dictionary, null); exception.expect(OmmInvalidUsageException.class); exception.expectMessage("Decoding error for AllowSuspectData element. Attempt to uintValue() while actual entry data type is Ascii"); LoginReq loginReq = EmaFactory.Domain.createLoginReq(); loginReq.message(decReqMsg); }
@Test public void headerLoginReqTest() { LoginReq loginReq = EmaFactory.Domain.createLoginReq(); loginReq.name("UserName"); loginReq.nameType(EmaRdm.USER_AUTH_TOKEN); assertEquals(true, loginReq.hasName()); assertEquals("UserName", loginReq.name()); assertEquals(true, loginReq.hasNameType()); assertEquals(EmaRdm.USER_AUTH_TOKEN, loginReq.nameType()); ReqMsg reqMsg = loginReq.message(); assertEquals("\0", reqMsg.name()); }