Search in sources :

Example 1 with SHSIMPINCSetType

use of com.ibm.maximo.SHSIMPINCSetType in project opennms by OpenNMS.

the class TsrmMockTest method testGetWithMock.

@Test
public void testGetWithMock() throws PluginException {
    QuerySHSIMPINCType queryIncident = new QuerySHSIMPINCType();
    QuerySHSIMPINCResponseType queryResponse = new QuerySHSIMPINCResponseType();
    SHSIMPINCSetType queryType = new SHSIMPINCSetType();
    SHSIMPINCINCIDENTType queryIncidentType = new SHSIMPINCINCIDENTType();
    MXStringType incidentId = new MXStringType();
    incidentId.setValue(INCIDENT_ID);
    queryIncidentType.setTICKETID(incidentId);
    queryType.getINCIDENT().add(queryIncidentType);
    queryResponse.setSHSIMPINCSet(queryType);
    when(port.querySHSIMPINC(argThat(new QueryIncidentArg()))).thenReturn(queryResponse);
    port.querySHSIMPINC(queryIncident);
    Ticket ticket = m_ticketer.get(INCIDENT_ID);
    verify(port).querySHSIMPINC(queryIncident);
    assertEquals(ticket.getId(), INCIDENT_ID);
}
Also used : QuerySHSIMPINCResponseType(com.ibm.maximo.QuerySHSIMPINCResponseType) Ticket(org.opennms.api.integration.ticketing.Ticket) SHSIMPINCSetType(com.ibm.maximo.SHSIMPINCSetType) QuerySHSIMPINCType(com.ibm.maximo.QuerySHSIMPINCType) MXStringType(com.ibm.maximo.MXStringType) SHSIMPINCINCIDENTType(com.ibm.maximo.SHSIMPINCINCIDENTType) Test(org.junit.Test)

Example 2 with SHSIMPINCSetType

use of com.ibm.maximo.SHSIMPINCSetType in project opennms by OpenNMS.

the class TsrmTicketerPlugin method saveOrUpdate.

@Override
public void saveOrUpdate(Ticket ticket) throws PluginException {
    LOG.debug("saveOrUpdate called with ticket: {}", ticket);
    String ticketId = ticket.getId();
    if (StringUtils.isEmpty(ticketId)) {
        SHSIMPINCINCIDENTType incident = new SHSIMPINCINCIDENTType();
        updateIncidentWithTicket(incident, ticket);
        SHSIMPINCSetType incSetType = new SHSIMPINCSetType();
        List<SHSIMPINCINCIDENTType> incidentList = incSetType.getINCIDENT();
        incidentList.add(incident);
        CreateSHSIMPINCType createIncidentType = new CreateSHSIMPINCType();
        createIncidentType.setSHSIMPINCSet(incSetType);
        CreateSHSIMPINCResponseType response = port.createSHSIMPINC(createIncidentType);
        if (response != null) {
            List<INCIDENTKeyType> incidentKeyList = response.getINCIDENTMboKeySet().getINCIDENT();
            if (!CollectionUtils.isEmpty(incidentKeyList)) {
                // Response will only have one element in the list
                INCIDENTKeyType incidentKey = incidentKeyList.get(0);
                ticket.setId(incidentKey.getTICKETID().getValue());
            }
        }
    } else {
        SHSIMPINCQueryType queryType = new SHSIMPINCQueryType();
        SHSIMPINCQueryType.INCIDENT incidentQuery = new SHSIMPINCQueryType.INCIDENT();
        List<MXStringQueryType> ticketList = incidentQuery.getTICKETID();
        MXStringQueryType ticketQuery = new MXStringQueryType();
        ticketQuery.setValue(ticketId);
        ticketList.add(ticketQuery);
        queryType.setINCIDENT(incidentQuery);
        QuerySHSIMPINCType queryIncident = new QuerySHSIMPINCType();
        queryIncident.setSHSIMPINCQuery(queryType);
        QuerySHSIMPINCResponseType response = port.querySHSIMPINC(queryIncident);
        if (!CollectionUtils.isEmpty(response.getSHSIMPINCSet().getINCIDENT())) {
            // Response will only have one element in the list
            SHSIMPINCINCIDENTType incident = response.getSHSIMPINCSet().getINCIDENT().get(0);
            updateIncidentWithTicket(incident, ticket);
            UpdateSHSIMPINCType updateIncident = new UpdateSHSIMPINCType();
            SHSIMPINCSetType updateIncidentType = new SHSIMPINCSetType();
            updateIncidentType.getINCIDENT().add(incident);
            updateIncident.setSHSIMPINCSet(updateIncidentType);
            port.updateSHSIMPINC(updateIncident);
        }
    }
}
Also used : QuerySHSIMPINCResponseType(com.ibm.maximo.QuerySHSIMPINCResponseType) SHSIMPINCSetType(com.ibm.maximo.SHSIMPINCSetType) MXStringQueryType(com.ibm.maximo.MXStringQueryType) UpdateSHSIMPINCType(com.ibm.maximo.UpdateSHSIMPINCType) CreateSHSIMPINCResponseType(com.ibm.maximo.CreateSHSIMPINCResponseType) QuerySHSIMPINCType(com.ibm.maximo.QuerySHSIMPINCType) CreateSHSIMPINCType(com.ibm.maximo.CreateSHSIMPINCType) SHSIMPINCQueryType(com.ibm.maximo.SHSIMPINCQueryType) INCIDENTKeyType(com.ibm.maximo.INCIDENTKeyType) SHSIMPINCINCIDENTType(com.ibm.maximo.SHSIMPINCINCIDENTType)

Aggregations

QuerySHSIMPINCResponseType (com.ibm.maximo.QuerySHSIMPINCResponseType)2 QuerySHSIMPINCType (com.ibm.maximo.QuerySHSIMPINCType)2 SHSIMPINCINCIDENTType (com.ibm.maximo.SHSIMPINCINCIDENTType)2 SHSIMPINCSetType (com.ibm.maximo.SHSIMPINCSetType)2 CreateSHSIMPINCResponseType (com.ibm.maximo.CreateSHSIMPINCResponseType)1 CreateSHSIMPINCType (com.ibm.maximo.CreateSHSIMPINCType)1 INCIDENTKeyType (com.ibm.maximo.INCIDENTKeyType)1 MXStringQueryType (com.ibm.maximo.MXStringQueryType)1 MXStringType (com.ibm.maximo.MXStringType)1 SHSIMPINCQueryType (com.ibm.maximo.SHSIMPINCQueryType)1 UpdateSHSIMPINCType (com.ibm.maximo.UpdateSHSIMPINCType)1 Test (org.junit.Test)1 Ticket (org.opennms.api.integration.ticketing.Ticket)1