/protocols/ss7/m3ua/api/src/main/java/org/mobicents/protocols/ss7/m3ua/parameter/ParameterFactory.java
Java | 122 lines | 38 code | 29 blank | 55 comment | 0 complexity | e25a1a53e38c8cc9c5371f831dd568e2 MD5 | raw file
1/* 2 * JBoss, Home of Professional Open Source 3 * Copyright 2011, Red Hat, Inc. and individual contributors 4 * by the @authors tag. See the copyright.txt in the distribution for a 5 * full listing of individual contributors. 6 * 7 * This is free software; you can redistribute it and/or modify it 8 * under the terms of the GNU Lesser General Public License as 9 * published by the Free Software Foundation; either version 2.1 of 10 * the License, or (at your option) any later version. 11 * 12 * This software is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 * Lesser General Public License for more details. 16 * 17 * You should have received a copy of the GNU Lesser General Public 18 * License along with this software; if not, write to the Free 19 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 20 * 02110-1301 USA, or see the FSF site: http://www.fsf.org. 21 */ 22 23package org.mobicents.protocols.ss7.m3ua.parameter; 24 25import org.mobicents.protocols.ss7.m3ua.parameter.CongestedIndication.CongestionLevel; 26import org.mobicents.protocols.ss7.mtp.Mtp3TransferPrimitive; 27 28/** 29 * Constructs parameters. 30 * 31 * @author amit bhayani 32 * @author kulikov 33 */ 34public interface ParameterFactory { 35 /** 36 * Constructs Protocol Data parameter. 37 * 38 * @param opc 39 * the origination point code 40 * @param dpc 41 * the destination point code 42 * @param si 43 * the service indicator 44 * @param ni 45 * the network indicator 46 * @param mp 47 * the message priority indicator 48 * @param sls 49 * the signaling link selection 50 * @param data 51 * message payload 52 * @return Protocol data parameter 53 */ 54 public ProtocolData createProtocolData(int opc, int dpc, int si, int ni, 55 int mp, int sls, byte[] data); 56 57 /** 58 * Constructs Protocol Data parameter. 59 * 60 * @param mp 61 * message priority 62 * @param msu 63 * the message signaling unit 64 * @return Protocol data parameter 65 */ 66 public ProtocolData createProtocolData(Mtp3TransferPrimitive mtp3TransferPrimitive); 67 68 public ProtocolData createProtocolData(byte[] payloadData); 69 70 public NetworkAppearance createNetworkAppearance(long netApp); 71 72 public RoutingContext createRoutingContext(long[] routCntx); 73 74 public CorrelationId createCorrelationId(long corrId); 75 76 public AffectedPointCode createAffectedPointCode(int[] pc, short[] mask); 77 78 public DestinationPointCode createDestinationPointCode(int pc, short mask); 79 80 public InfoString createInfoString(String string); 81 82 public ConcernedDPC createConcernedDPC(int pointCode); 83 84 public CongestedIndication createCongestedIndication(CongestionLevel level); 85 86 public UserCause createUserCause(int user, int cause); 87 88 public ASPIdentifier createASPIdentifier(long aspId); 89 90 public LocalRKIdentifier createLocalRKIdentifier(long id); 91 92 public OPCList createOPCList(int[] pc, short[] mask); 93 94 public ServiceIndicators createServiceIndicators(short[] inds); 95 96 public TrafficModeType createTrafficModeType(int mode); 97 98 public RegistrationStatus createRegistrationStatus(int status); 99 100 public DiagnosticInfo createDiagnosticInfo(String info); 101 102 public RoutingKey createRoutingKey(LocalRKIdentifier localRkId, 103 RoutingContext rc, TrafficModeType trafMdTy, 104 NetworkAppearance netApp, DestinationPointCode[] dpc, 105 ServiceIndicators[] servInds, OPCList[] opcList); 106 107 public RegistrationResult createRegistrationResult( 108 LocalRKIdentifier localRkId, RegistrationStatus status, 109 RoutingContext rc); 110 111 public DeregistrationStatus createDeregistrationStatus(int status); 112 113 public DeregistrationResult createDeregistrationResult(RoutingContext rc, 114 DeregistrationStatus status); 115 116 public ErrorCode createErrorCode(int code); 117 118 public Status createStatus(int type, int info); 119 120 public HeartbeatData createHeartbeatData(byte[] data); 121 122}