Update Gradle Wrapper 6.3 und Asciidoctor 3.3.0 - OP#193
This commit is contained in:
@@ -1,6 +0,0 @@
|
||||
#
|
||||
# https://help.github.com/articles/dealing-with-line-endings/
|
||||
#
|
||||
# These are explicitly windows files and should use crlf
|
||||
*.bat text eol=crlf
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
# This workflow will build a Java project with Gradle
|
||||
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
|
||||
|
||||
name: Java CI with Gradle
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ master ]
|
||||
pull_request:
|
||||
branches: [ master ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up JDK 1.8
|
||||
uses: actions/setup-java@v1
|
||||
with:
|
||||
java-version: 1.8
|
||||
- name: Grant execute permission for gradlew
|
||||
run: chmod +x gradlew
|
||||
- name: Build with Gradle
|
||||
run: ./gradlew build
|
||||
@@ -15,3 +15,9 @@ gradle-app.setting
|
||||
|
||||
# Ignore Gradle build output directory
|
||||
build
|
||||
.settings/
|
||||
bin/
|
||||
.project
|
||||
.classpath
|
||||
.asciidoctorconfig.adoc
|
||||
.vscode/
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
variables:
|
||||
GRADLE_OPTS: "-Dorg.gradle.daemon=false"
|
||||
|
||||
before_script:
|
||||
- source "/home/gitlab-runner/.sdkman/bin/sdkman-init.sh"
|
||||
- sdk u java 11.0.12-open
|
||||
|
||||
stages:
|
||||
- build
|
||||
- test
|
||||
- docs
|
||||
- analysis
|
||||
- publish
|
||||
|
||||
Build Application:
|
||||
stage: build
|
||||
script: ./gradlew --build-cache compileJava
|
||||
cache:
|
||||
key: "$CI_COMMIT_REF_NAME"
|
||||
policy: push
|
||||
paths:
|
||||
- build
|
||||
- .gradle
|
||||
|
||||
Create Documentation:
|
||||
stage: build
|
||||
script: ./gradlew asciidoctorPdf
|
||||
|
||||
Test Application:
|
||||
stage: test
|
||||
script: ./gradlew check
|
||||
cache:
|
||||
key: "$CI_COMMIT_REF_NAME"
|
||||
policy: pull
|
||||
paths:
|
||||
- build
|
||||
- .gradle
|
||||
|
||||
sonarqube-check:
|
||||
stage: analysis
|
||||
variables:
|
||||
SONAR_USER_HOME: "${CI_PROJECT_DIR}/.sonar" # Defines the location of the analysis task cache
|
||||
GIT_DEPTH: "0" # Tells git to fetch all the branches of the project, required by the analysis task
|
||||
cache:
|
||||
key: "${CI_JOB_NAME}"
|
||||
paths:
|
||||
- .sonar/cache
|
||||
script: ./gradlew sonarqube
|
||||
allow_failure: true
|
||||
|
||||
Publish Artifacts:
|
||||
stage: publish
|
||||
script: ./gradlew publish
|
||||
cache:
|
||||
key: "$CI_COMMIT_REF_NAME"
|
||||
policy: pull
|
||||
paths:
|
||||
- build
|
||||
- .gradle
|
||||
+104
-19
@@ -1,29 +1,114 @@
|
||||
/*
|
||||
* This file was generated by the Gradle 'init' task.
|
||||
*
|
||||
* This generated file contains a sample Java Library project to get you started.
|
||||
* For more details take a look at the Java Libraries chapter in the Gradle
|
||||
* User Manual available at https://docs.gradle.org/6.3/userguide/java_library_plugin.html
|
||||
*/
|
||||
|
||||
plugins {
|
||||
// Apply the java-library plugin to add support for Java Library
|
||||
id 'java-library'
|
||||
id 'jacoco'
|
||||
id "org.sonarqube" version "3.3"
|
||||
id 'org.asciidoctor.jvm.pdf' version '3.3.2'
|
||||
id 'org.asciidoctor.jvm.convert' version '3.3.2'
|
||||
id 'org.asciidoctor.jvm.gems' version '3.3.2'
|
||||
id 'maven-publish'
|
||||
}
|
||||
|
||||
repositories {
|
||||
// Use jcenter for resolving dependencies.
|
||||
// You can declare any Maven/Ivy/file repository here.
|
||||
jcenter()
|
||||
ruby.gems()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
// This dependency is exported to consumers, that is to say found on their compile classpath.
|
||||
api 'org.apache.commons:commons-math3:3.6.1'
|
||||
|
||||
// This dependency is used internally, and not exposed to consumers on their own compile classpath.
|
||||
implementation 'com.google.guava:guava:28.2-jre'
|
||||
|
||||
// Use JUnit test framework
|
||||
testImplementation 'junit:junit:4.12'
|
||||
asciidoctorGems 'rubygems:rouge:3.15.0'
|
||||
asciidoctorGems 'rubygems:asciidoctor-diagram:2.2.2'
|
||||
testImplementation 'org.junit.jupiter:junit-jupiter:5.8.2'
|
||||
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.2'
|
||||
}
|
||||
|
||||
final BUILD_DATE = new Date().format('dd.MM.yyyy').toString()
|
||||
def pdfFile = layout.buildDirectory.file("docs/asciidocPdf/" + project.name + ".pdf")
|
||||
def pdfArtifact = artifacts.add('archives', pdfFile.get().asFile) {
|
||||
type 'pdf'
|
||||
builtBy asciidoctorPdf
|
||||
}
|
||||
sourceCompatibility = 1.8
|
||||
|
||||
publishing {
|
||||
publications {
|
||||
maven(MavenPublication) {
|
||||
group = group + '.docs'
|
||||
artifactId = project.name
|
||||
artifact pdfArtifact
|
||||
}
|
||||
}
|
||||
publications {
|
||||
osistacklibrary(MavenPublication) {
|
||||
from components.java
|
||||
}
|
||||
}
|
||||
|
||||
repositories {
|
||||
maven {
|
||||
url "https://gitlab.thpeetz.de/api/v4/projects/${projectId}/packages/maven"
|
||||
credentials(HttpHeaderCredentials) {
|
||||
name = "Private-Token"
|
||||
value = gitLabPrivateToken
|
||||
}
|
||||
authentication {
|
||||
header(HttpHeaderAuthentication)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
test {
|
||||
useJUnitPlatform()
|
||||
testLogging {
|
||||
events "passed", "skipped", "failed"
|
||||
}
|
||||
}
|
||||
|
||||
jacocoTestReport {
|
||||
reports {
|
||||
xml.enabled true
|
||||
}
|
||||
}
|
||||
|
||||
test.finalizedBy jacocoTestReport
|
||||
|
||||
sonarqube {
|
||||
properties {
|
||||
property "sonar.projectKey", "github_osi-stack_AYBw4khXuGIZKMqU5_ed"
|
||||
property "sonar.host.url", "https://sonar.thpeetz.de"
|
||||
property "sonar.login", "71bff82090aff3503c20d5070949c3bba548c51e"
|
||||
property "sonar.qualitygate.wait", true
|
||||
property "sonar.sourceEncoding", "UTF-8"
|
||||
}
|
||||
}
|
||||
|
||||
tasks.named('sonarqube').configure {
|
||||
dependsOn test
|
||||
}
|
||||
|
||||
asciidoctorPdf {
|
||||
dependsOn asciidoctorGemsPrepare
|
||||
|
||||
baseDirFollowsSourceFile()
|
||||
|
||||
asciidoctorj {
|
||||
requires 'rouge', 'asciidoctor-diagram'
|
||||
attributes 'build-gradle': file('build.gradle'),
|
||||
'endpoint-url': 'https://www.thpeetz.de',
|
||||
'source-highlighter': 'rouge',
|
||||
'imagesdir': './images',
|
||||
'toc': 'left',
|
||||
'toc-title': 'Inhaltsverzeichnis',
|
||||
'revdate': BUILD_DATE,
|
||||
'revnumber': { project.version.toString() },
|
||||
'revremark': 'Entwurf',
|
||||
'chapter-label': '',
|
||||
'icons': 'font',
|
||||
'idprefix': 'id_',
|
||||
'idseparator': '-',
|
||||
'docinfo1': ''
|
||||
}
|
||||
}
|
||||
|
||||
wrapper {
|
||||
gradleVersion = "6.3"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
description='OSI Stack Library'
|
||||
version=0.1.0-SNAPSHOT
|
||||
group=de.thpeetz.network
|
||||
gitLabPrivateToken=bFcsw1ebNhoFgKysksU1
|
||||
projectId=168
|
||||
|
||||
@@ -1,10 +1 @@
|
||||
/*
|
||||
* This file was generated by the Gradle 'init' task.
|
||||
*
|
||||
* The settings file is used to specify which projects to include in your build.
|
||||
*
|
||||
* Detailed information about configuring a multi-project build in Gradle can be found
|
||||
* in the user manual at https://docs.gradle.org/6.3/userguide/multi_project_builds.html
|
||||
*/
|
||||
|
||||
rootProject.name = 'osi-stack'
|
||||
|
||||
@@ -0,0 +1,93 @@
|
||||
= Projektbeschreibung osi-stack: Pflichtenheft und Projektbeschreibung
|
||||
:author: Thomas Peetz
|
||||
:email: <thomas.peetz@thpeetz.de>
|
||||
:doctype: article
|
||||
:sectnums:
|
||||
:sectnumlevels: 4
|
||||
:toc:
|
||||
:toclevels: 4
|
||||
:table-caption!:
|
||||
:counter: table-number: 0
|
||||
|
||||
|
||||
//[title="Dokumenthistorie", caption="Tabelle {counter:table-number} ", id="Tabelle-{counter:table-number}", options="header"]
|
||||
//[title="Dokumenthistorie", id="Table-{counter:table-number}", options="header", cols="4"]
|
||||
[title="Dokumenthistorie", id="Table-{counter:table-number}", options="header"]
|
||||
|===
|
||||
| Version | Datum | Autor | Änderungsgrund / Bemerkungen
|
||||
| 0.0.1 | 28.04.2022 | Thomas Peetz | Ersterstellung
|
||||
|===
|
||||
|
||||
== Einführung
|
||||
|
||||
=== Zweck
|
||||
|
||||
Implementierung der OSI Layer 4 bis 7 in Java.
|
||||
|
||||
=== Stakeholder des Systems
|
||||
|
||||
=== Systemumfang
|
||||
|
||||
==== Zielsetzung des Systems
|
||||
|
||||
=== Systemübersicht
|
||||
|
||||
==== Systemkontext
|
||||
|
||||
==== Systemarchitektur
|
||||
|
||||
===== Systemkomponente 1
|
||||
|
||||
===== Systemkomponente 2
|
||||
|
||||
==== Systemschnittstellen
|
||||
|
||||
===== Realisierte Schnittstellen
|
||||
|
||||
===== Verwendete Schnittstellen
|
||||
|
||||
==== Logisches Datenmodell
|
||||
|
||||
==== Einschränkungen
|
||||
|
||||
== Anforderungen der Domäne
|
||||
|
||||
=== Systemfunktionen
|
||||
|
||||
==== Anwendungsfälle
|
||||
|
||||
==== Akteure
|
||||
|
||||
==== Zielgruppen
|
||||
|
||||
=== Anforderungen
|
||||
|
||||
==== Anforderungen an externe Schnittstellen
|
||||
|
||||
==== Funktionale Anforderungen
|
||||
|
||||
==== Qualitätsanforderungen
|
||||
|
||||
==== Randbedingungen
|
||||
|
||||
==== Weitere Anforderungen
|
||||
|
||||
==== Wartungs- und Supportinformationen
|
||||
|
||||
=== Verifikation
|
||||
|
||||
[bibliography]
|
||||
== Referenzen
|
||||
|
||||
- [[[1]]] http://www.gitlab.org
|
||||
|
||||
[glossary]
|
||||
== Glossar
|
||||
|
||||
== Verzeichnisse
|
||||
|
||||
=== Abbildungsverzeichnis
|
||||
|
||||
=== Tabellenverzeichnis
|
||||
|
||||
<<Table-1, Tabelle 1>> <<Table-1>>
|
||||
@@ -1,10 +0,0 @@
|
||||
/*
|
||||
* This Java source file was generated by the Gradle 'init' task.
|
||||
*/
|
||||
package com.ibtp.network.osi;
|
||||
|
||||
public class Library {
|
||||
public boolean someLibraryMethod() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
package de.thpeetz.network.osi;
|
||||
|
||||
/**
|
||||
* AccessPoint
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public class AccessPoint
|
||||
{
|
||||
/**
|
||||
* byte[] accessPoint
|
||||
*/
|
||||
private byte[] accessPoint;
|
||||
|
||||
/**
|
||||
* String accessPointString
|
||||
*/
|
||||
private String accessPointString;
|
||||
|
||||
/**
|
||||
* Standard constructor
|
||||
*/
|
||||
public AccessPoint()
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructor to initialize member accessPoint
|
||||
*/
|
||||
public AccessPoint(String ap)
|
||||
{
|
||||
this.accessPointString = ap;
|
||||
this.accessPoint = ap.getBytes();
|
||||
}
|
||||
|
||||
/**
|
||||
* Return byte array as string.
|
||||
* @return
|
||||
*/
|
||||
public final String getString()
|
||||
{
|
||||
return this.accessPointString;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return byte array.
|
||||
* @return
|
||||
*/
|
||||
public final byte[] getData()
|
||||
{
|
||||
return this.accessPoint;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return length of byte array.
|
||||
* @return
|
||||
*/
|
||||
public final byte getLength()
|
||||
{
|
||||
return (byte)this.accessPoint.length;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package de.thpeetz.network.osi;
|
||||
|
||||
public interface DataService
|
||||
{
|
||||
/**
|
||||
*
|
||||
* @param telegram
|
||||
*/
|
||||
void eventReceive(DataUnit telegram);
|
||||
|
||||
/**
|
||||
* eventSessionDown
|
||||
*
|
||||
*/
|
||||
void eventSessionDown();
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
*/
|
||||
void eventClose();
|
||||
}
|
||||
@@ -0,0 +1,239 @@
|
||||
package de.thpeetz.network.osi;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public class DataUnit
|
||||
{
|
||||
/**
|
||||
* Contains the telegram as array of byte.
|
||||
*/
|
||||
private byte[] buffer;
|
||||
|
||||
/**
|
||||
* Contains the position.
|
||||
*/
|
||||
private int pointer;
|
||||
|
||||
/**
|
||||
* Contains the length of the actual telegram.
|
||||
*/
|
||||
private int length;
|
||||
|
||||
/**
|
||||
* Indicates whether the buffer is in READ or WRITE mode.
|
||||
*/
|
||||
private boolean writeMode = false;
|
||||
|
||||
/**
|
||||
* Class constructor
|
||||
*
|
||||
*/
|
||||
public DataUnit()
|
||||
{
|
||||
this.buffer = new byte[1024];
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes DataUnit with given array. The position is set to the first
|
||||
* byte and the length is set to the length of the given array.
|
||||
*
|
||||
* @param telegram Telegram to decode
|
||||
*/
|
||||
public void initialize(byte[] telegram)
|
||||
{
|
||||
if (telegram.length > this.buffer.length) this.buffer = new byte[telegram.length];
|
||||
System.arraycopy(telegram, 0, this.buffer, 0, telegram.length);
|
||||
this.length = telegram.length;
|
||||
setToRead();
|
||||
}
|
||||
|
||||
/**
|
||||
* initialize
|
||||
*
|
||||
*/
|
||||
public void initialize()
|
||||
{
|
||||
this.length = 0;
|
||||
setToRead();
|
||||
}
|
||||
|
||||
/**
|
||||
* addBuffer
|
||||
*
|
||||
* @param telegram parameter for addBuffer
|
||||
*/
|
||||
public void addBuffer(byte[] telegram)
|
||||
{
|
||||
if (telegram.length + this.length > this.buffer.length) {
|
||||
byte[] tmp = new byte[telegram.length + this.length];
|
||||
System.arraycopy(this.buffer,0,tmp,0,this.buffer.length);
|
||||
this.buffer = tmp;
|
||||
}
|
||||
System.arraycopy(telegram,0,this.buffer,this.length,telegram.length);
|
||||
this.length += telegram.length;
|
||||
}
|
||||
|
||||
/**
|
||||
* setToWrite
|
||||
*
|
||||
*/
|
||||
public void setToWrite()
|
||||
{
|
||||
this.pointer = this.buffer.length;
|
||||
this.length = 0;
|
||||
this.writeMode = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* setToRead
|
||||
*
|
||||
*/
|
||||
public void setToRead()
|
||||
{
|
||||
this.pointer = 0;
|
||||
this.writeMode = false;
|
||||
}
|
||||
|
||||
/**
|
||||
* write
|
||||
*
|
||||
* @param data parameter for write
|
||||
*/
|
||||
public void write(byte[] data)
|
||||
{
|
||||
if (!this.writeMode) return;
|
||||
if (data.length+this.length > this.buffer.length)
|
||||
{
|
||||
byte[] tmp = this.buffer;
|
||||
this.buffer = new byte[data.length+this.length];
|
||||
int diff = this.buffer.length-tmp.length;
|
||||
this.pointer += diff;
|
||||
System.arraycopy(tmp,0,this.buffer,diff,tmp.length);
|
||||
}
|
||||
this.pointer = this.pointer-data.length;
|
||||
System.arraycopy(data,0,this.buffer,this.pointer,data.length);
|
||||
this.length = this.length+data.length;
|
||||
}
|
||||
|
||||
/**
|
||||
* write
|
||||
*
|
||||
* @param data parameter for write
|
||||
*/
|
||||
public void write(byte data)
|
||||
{
|
||||
if (!this.writeMode) return;
|
||||
if (this.length+1 > this.buffer.length)
|
||||
{
|
||||
byte[] tmp = this.buffer;
|
||||
this.buffer = new byte[this.buffer.length+10];
|
||||
int diff = this.buffer.length-tmp.length;
|
||||
this.pointer += diff;
|
||||
System.arraycopy(tmp,0,this.buffer,diff,tmp.length);
|
||||
}
|
||||
this.buffer[--this.pointer] = data; this.length++;
|
||||
}
|
||||
|
||||
/**
|
||||
* write
|
||||
*
|
||||
* @param data parameter for write
|
||||
*/
|
||||
public void write(int data)
|
||||
{
|
||||
if (!this.writeMode) return;
|
||||
if (this.length+2 > this.buffer.length)
|
||||
{
|
||||
byte[] tmp = this.buffer;
|
||||
this.buffer = new byte[this.buffer.length+10];
|
||||
int diff = this.buffer.length-tmp.length;
|
||||
this.pointer += diff;
|
||||
System.arraycopy(tmp,0,this.buffer,diff,tmp.length);
|
||||
}
|
||||
this.buffer[--this.pointer] = (byte)(0xff & data); this.length++;
|
||||
this.buffer[--this.pointer] = (byte)( (0xff & (data >> 8)) ); this.length++;
|
||||
}
|
||||
|
||||
/**
|
||||
* Read next byte.
|
||||
* @return Returns byte at the current position.
|
||||
*/
|
||||
public final byte read()
|
||||
{
|
||||
this.length--;
|
||||
return this.buffer[this.pointer++];
|
||||
}
|
||||
|
||||
/**
|
||||
* Reads next <code>size</code> bytes from buffer.
|
||||
*
|
||||
* @param size Length of bytes to be read from buffer
|
||||
* @return Returns array of byte of length <code>size</code>
|
||||
*/
|
||||
public final byte[] read(int size)
|
||||
{
|
||||
byte[] tmp = new byte[size];
|
||||
System.arraycopy(this.buffer, this.pointer, tmp, 0, size);
|
||||
this.pointer += size; this.length -= size;
|
||||
return tmp;
|
||||
}
|
||||
|
||||
/**
|
||||
* Read next two bytes from buffer. The first byte is considered as HIGH BYTE
|
||||
* the second as LOW BYTE.
|
||||
*
|
||||
* @return Returns int value.
|
||||
*/
|
||||
public final int readInt()
|
||||
{
|
||||
int highbyte = ((0xff & this.buffer[this.pointer++]) << 8);
|
||||
int lowbyte = (0xff & this.buffer[this.pointer++]);
|
||||
//int tmp = (0xff & this.buffer[this.pointer++]) & ((0xff & this.buffer[this.pointer++]) << 8);
|
||||
int tmp = lowbyte | highbyte;
|
||||
this.length -= 2;
|
||||
return tmp;
|
||||
}
|
||||
|
||||
/**
|
||||
* getBuffer
|
||||
*
|
||||
* @return the returned byte[]
|
||||
*/
|
||||
public final byte[] getBuffer() {
|
||||
byte[] tmp = new byte[this.length];
|
||||
try {
|
||||
System.arraycopy(this.buffer, this.pointer, tmp, 0, this.length);
|
||||
} catch (ArrayIndexOutOfBoundsException exception) {
|
||||
//System.out.println(buffer.length + " " + pointer + " " + tmp.length + " " + length);
|
||||
}
|
||||
return tmp;
|
||||
}
|
||||
|
||||
/**
|
||||
* getBuffer
|
||||
*
|
||||
* @param count parameter for getBuffer
|
||||
* @return the returned byte[]
|
||||
*/
|
||||
public final byte[] getBuffer(int count) {
|
||||
byte[] tmp = new byte[count];
|
||||
try {
|
||||
System.arraycopy(this.buffer, this.pointer, tmp, 0, count);
|
||||
this.length -= count; this.pointer += count;
|
||||
} catch (ArrayIndexOutOfBoundsException exception) {
|
||||
//System.out.println(buffer.length + " " + pointer + " " + tmp.length + " " + length);
|
||||
}
|
||||
return tmp;
|
||||
}
|
||||
|
||||
/**
|
||||
* getLength
|
||||
*
|
||||
* @return the returned int
|
||||
*/
|
||||
public final int getLength() {
|
||||
return this.length;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
package de.thpeetz.network.osi;
|
||||
|
||||
import de.thpeetz.tools.ObjectPool;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public class DataUnitManager
|
||||
{
|
||||
/**
|
||||
* DataUnitManager self
|
||||
*/
|
||||
private static DataUnitManager self = null;
|
||||
|
||||
/**
|
||||
* ObjectPool objectPool
|
||||
*/
|
||||
private ObjectPool<DataUnit> objectPool;
|
||||
|
||||
/**************************************************************************
|
||||
* Class constructor
|
||||
*
|
||||
***************************************************************************/
|
||||
protected DataUnitManager()
|
||||
{
|
||||
this.objectPool = new ObjectPool<DataUnit>(DataUnit.class, 5);
|
||||
for (int i=0; i <5; i++) {
|
||||
this.objectPool.freeInstance(this.objectPool.getInstance());
|
||||
}
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* getManager
|
||||
*
|
||||
* @return the returned DataUnitManager
|
||||
***************************************************************************/
|
||||
protected static DataUnitManager getManager()
|
||||
{
|
||||
if (self == null) self = new DataUnitManager();
|
||||
return self;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* getInstance
|
||||
*
|
||||
* @return the returned DataUnit
|
||||
***************************************************************************/
|
||||
public static synchronized DataUnit getInstance()
|
||||
{
|
||||
return getManager().objectPool.getInstance();
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* freeInstance
|
||||
*
|
||||
* @param object parameter for freeInstance
|
||||
***************************************************************************/
|
||||
public static synchronized void freeInstance(DataUnit object)
|
||||
{
|
||||
getManager().objectPool.freeInstance(object);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,421 @@
|
||||
package de.thpeetz.network.osi.presentation;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
import de.thpeetz.network.osi.session.SessionLayer;
|
||||
import de.thpeetz.network.osi.session.SessionProvider;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public class PresentationLayer implements PresentationProvider, PresentationUser {
|
||||
private SessionProvider provider;
|
||||
|
||||
public PresentationLayer(boolean manager, AccessPoint ssap, AccessPoint tsap) {
|
||||
this.provider = new SessionLayer(manager, this, ssap, tsap);
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationProvider#connectRequest(com.
|
||||
* peetz.network.osi.AccessPoint, com.peetz.network.osi.AccessPoint,
|
||||
* com.peetz.network.osi.AccessPoint, com.peetz.network.osi.AccessPoint,
|
||||
* com.peetz.network.osi.AccessPoint, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void connectRequest(AccessPoint calledNSAP, AccessPoint calledTSAP, AccessPoint calledSSAP,
|
||||
AccessPoint callerPSAP, AccessPoint calledPSAP, int qualityOfService, DataUnit userData) {
|
||||
this.provider.connectRequest(calledNSAP, calledTSAP, 1, null, calledSSAP, qualityOfService, 1, 1, 1, 1,
|
||||
userData);
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationProvider#releaseRequest(com.
|
||||
* peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void releaseRequest(DataUnit userData) {
|
||||
this.provider.releaseRequest(userData);
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationProvider#dataRequest(com.peetz
|
||||
* .network.osi.DataUnit)
|
||||
*/
|
||||
public void dataRequest(DataUnit userData) {
|
||||
this.provider.dataRequest(userData);
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationProvider#userAbortRequest(com.
|
||||
* peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void userAbortRequest(DataUnit userData) {
|
||||
this.provider.userAbortRequest(userData);
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#connectIndication(com.
|
||||
* peetz.network.osi.AccessPoint, com.peetz.network.osi.AccessPoint, int, int,
|
||||
* int, int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void connectIndication(AccessPoint callingAddress, AccessPoint calledAddress, int qualityOfService,
|
||||
int representationRequirements, int mode, int sessionRequirements, int initialSPSerialNumber,
|
||||
int assignmentOfTokens, int sessionConnectionIdentifier, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#connectIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#connectConfirm(com.peetz.
|
||||
* network.osi.AccessPoint, int, int, int, int, int, int,
|
||||
* com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void connectConfirm(AccessPoint respondingAddress, int qualityOfService, int representationRequirements,
|
||||
int sessionRequirements, int initialSPSerialNumber, int assignmentOfTokens, int sessionConnectionIdentifier,
|
||||
DataUnit userData) {
|
||||
System.out.println("PresentationLayer#connectConfirm");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#userAbortIndication(com.
|
||||
* peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void userAbortIndication(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#userAbortIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#providerAbortIndication(
|
||||
* int)
|
||||
*/
|
||||
public void providerAbortIndication(int providerReason) {
|
||||
System.out.println("PresentationLayer#providerAbortIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#alterContextIndication(
|
||||
* int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void alterContextIndication(int additionList, int deletionList, int additionResultList, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#alterContextIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#alterContextConfirm(int,
|
||||
* int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void alterContextConfirm(int additionResultList, int deletionResultList, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#alterContextConfirm");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#typedDataIndication(com.
|
||||
* peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void typedDataIndication(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#typedDataIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#dataIndication(com.peetz.
|
||||
* network.osi.DataUnit)
|
||||
*/
|
||||
public void dataIndication(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#dataIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#resynchronizeIndication(
|
||||
* int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void resynchronizeIndication(int type, int sPSerialNumber, int tokens, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#resynchronizeIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#resynchronizeConfirm(int,
|
||||
* int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void resynchronizeConfirm(int sPSerialNumber, int tokens, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#resynchronizeConfirm");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#activityStartIndication(
|
||||
* int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityStartIndication(int activityIdentifier, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#activityStartIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#activityResumeIndication(
|
||||
* int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityResumeIndication(int activityIdentifier, int oldActivityIdentifier, int sPSerialNumber,
|
||||
int oldSessionIdentifier, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#activityResumeIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see com.peetz.network.osi.presentation.PresentationUser#
|
||||
* activityInterruptIndication(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityInterruptIndication(int reason, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#activityInterruptIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#activityInterruptConfirm(
|
||||
* com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityInterruptConfirm(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#activityInterruptConfirm");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#activityDiscardIndication
|
||||
* (int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityDiscardIndication(int reason, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#activityDiscardIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#activityDiscardConfirm(
|
||||
* com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityDiscardConfirm(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#activityDiscardConfirm");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#activityEndIndication(
|
||||
* int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityEndIndication(int sPSerialNumber, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#activityEndIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#activityEndConfirm(com.
|
||||
* peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityEndConfirm(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#activityEndConfirm");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#capabilityDataIndication(
|
||||
* com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void capabilityDataIndication(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#capabilityDataIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#capabilityDataConfirm(com
|
||||
* .peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void capabilityDataConfirm(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#capabilityDataConfirm");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#controlGiveIndication(com
|
||||
* .peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void controlGiveIndication(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#controlGiveIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#tokenGiveIndication(com.
|
||||
* peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void tokenGiveIndication(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#tokenGiveIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#tokenPleaseIndication(
|
||||
* int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void tokenPleaseIndication(int tokens, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#tokenPleaseIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see com.peetz.network.osi.presentation.PresentationUser#
|
||||
* userExceptionReportIndication(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void userExceptionReportIndication(int reason, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#userExceptionReportIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see com.peetz.network.osi.presentation.PresentationUser#
|
||||
* providerExceptionReportIndication(int)
|
||||
*/
|
||||
public void providerExceptionReportIndication(int reason) {
|
||||
System.out.println("PresentationLayer#providerExceptionReportIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#expeditedDataIndication(
|
||||
* com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void expeditedDataIndication(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#expeditedDataIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#syncMinorIndication(int,
|
||||
* int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMinorIndication(int type, int sPSerialNumber, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#syncMinorIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#syncMinorConfirm(int,
|
||||
* com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMinorConfirm(int sPSerialNumber, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#syncMinorConfirm");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#syncMajorIndication(int,
|
||||
* com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMajorIndication(int sPSerialNumber, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#syncMajorIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#syncMajorConfirm(com.
|
||||
* peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMajorConfirm(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#syncMajorConfirm");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* com.peetz.network.osi.presentation.PresentationUser#releaseIndication(com.
|
||||
* peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void releaseIndication(DataUnit userData) {
|
||||
System.out.println("PresentationLayer#releaseIndication");
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see com.peetz.network.osi.presentation.PresentationUser#releaseConfirm(int,
|
||||
* com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void releaseConfirm(int result, DataUnit userData) {
|
||||
System.out.println("PresentationLayer#releaseConfirm");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package de.thpeetz.network.osi.presentation;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public interface PresentationProvider extends PresentationService
|
||||
{
|
||||
void connectRequest(AccessPoint calledNSAP,
|
||||
AccessPoint calledTSAP,
|
||||
AccessPoint calledSSAP,
|
||||
AccessPoint callerPSAP,
|
||||
AccessPoint calledPSAP,
|
||||
int qualityOfService,
|
||||
DataUnit userData);
|
||||
void releaseRequest(DataUnit userData);
|
||||
void dataRequest(DataUnit userData);
|
||||
|
||||
void userAbortRequest(DataUnit userData);
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package de.thpeetz.network.osi.presentation;
|
||||
|
||||
/**
|
||||
* Implementation of ITU-T X.226
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public interface PresentationService
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package de.thpeetz.network.osi.presentation;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public interface PresentationUser extends PresentationService
|
||||
{
|
||||
void connectIndication(AccessPoint callingAddress,
|
||||
AccessPoint calledAddress,
|
||||
int qualityOfService,
|
||||
int representationRequirements,
|
||||
int mode,
|
||||
int sessionRequirements,
|
||||
int initialSPSerialNumber,
|
||||
int assignmentOfTokens,
|
||||
int sessionConnectionIdentifier,
|
||||
DataUnit userData);
|
||||
void connectConfirm(AccessPoint respondingAddress,
|
||||
int qualityOfService,
|
||||
int representationRequirements,
|
||||
int sessionRequirements,
|
||||
int initialSPSerialNumber,
|
||||
int assignmentOfTokens,
|
||||
int sessionConnectionIdentifier,
|
||||
DataUnit userData);
|
||||
void userAbortIndication(DataUnit userData);
|
||||
void providerAbortIndication(int providerReason);
|
||||
void alterContextIndication(int additionList, int deletionList,
|
||||
int additionResultList, DataUnit userData);
|
||||
void alterContextConfirm(int additionResultList, int deletionResultList,
|
||||
DataUnit userData);
|
||||
void typedDataIndication(DataUnit userData);
|
||||
void dataIndication(DataUnit userData);
|
||||
void resynchronizeIndication(int type, int sPSerialNumber, int tokens, DataUnit userData);
|
||||
void resynchronizeConfirm(int sPSerialNumber, int tokens, DataUnit userData);
|
||||
void activityStartIndication(int activityIdentifier, DataUnit userData);
|
||||
void activityResumeIndication(int activityIdentifier, int oldActivityIdentifier,
|
||||
int sPSerialNumber, int oldSessionIdentifier,
|
||||
DataUnit userData);
|
||||
void activityInterruptIndication(int reason, DataUnit userData);
|
||||
void activityInterruptConfirm(DataUnit userData);
|
||||
void activityDiscardIndication(int reason, DataUnit userData);
|
||||
void activityDiscardConfirm(DataUnit userData);
|
||||
void activityEndIndication(int sPSerialNumber, DataUnit userData);
|
||||
void activityEndConfirm(DataUnit userData);
|
||||
void capabilityDataIndication(DataUnit userData);
|
||||
void capabilityDataConfirm(DataUnit userData);
|
||||
void controlGiveIndication(DataUnit userData);
|
||||
void tokenGiveIndication(DataUnit userData);
|
||||
void tokenPleaseIndication(int tokens, DataUnit userData);
|
||||
void userExceptionReportIndication(int reason, DataUnit userData);
|
||||
void providerExceptionReportIndication(int reason);
|
||||
void expeditedDataIndication(DataUnit userData);
|
||||
void syncMinorIndication(int type, int sPSerialNumber, DataUnit userData);
|
||||
void syncMinorConfirm(int sPSerialNumber, DataUnit userData);
|
||||
void syncMajorIndication(int sPSerialNumber, DataUnit userData);
|
||||
void syncMajorConfirm(DataUnit userData);
|
||||
void releaseIndication(DataUnit userData);
|
||||
void releaseConfirm(int result, DataUnit userData);
|
||||
}
|
||||
@@ -0,0 +1,523 @@
|
||||
package de.thpeetz.network.osi.session;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
import de.thpeetz.network.osi.presentation.PresentationUser;
|
||||
import de.thpeetz.network.osi.transport.TransportLayer;
|
||||
import de.thpeetz.network.osi.transport.TransportProvider;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public class SessionLayer implements SessionProvider, SessionUser
|
||||
{
|
||||
private PresentationUser user;
|
||||
private TransportProvider provider;
|
||||
@SuppressWarnings("unused")
|
||||
private AccessPoint ssap;
|
||||
private AccessPoint tsap;
|
||||
|
||||
public SessionLayer(boolean manager, PresentationUser user, AccessPoint ssap, AccessPoint tsap)
|
||||
{
|
||||
this.user = user;
|
||||
this.provider = new TransportLayer(manager, this, tsap);
|
||||
this.ssap = ssap;
|
||||
this.tsap = tsap;
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#connectRequest(com.peetz.network.osi.AccessPoint, com.peetz.network.osi.AccessPoint, int, com.peetz.network.osi.AccessPoint, com.peetz.network.osi.AccessPoint, int, int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void connectRequest(AccessPoint calledNSAP, AccessPoint calledTSAP,
|
||||
int connectionIdentifier, AccessPoint callingSSAP,
|
||||
AccessPoint calledSSAP, int qualityOfService,
|
||||
int sessionRequirements, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userData)
|
||||
{
|
||||
this.provider.connectRequest(calledNSAP, calledTSAP, this.tsap, true, 1, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#connectResponse(int, com.peetz.network.osi.AccessPoint, int, int, int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void connectResponse(int connectionIdentifier,
|
||||
AccessPoint respondingAddress, int result, int qualityOfService,
|
||||
int sessionRequirements, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userData)
|
||||
{
|
||||
this.provider.connectResponse(qualityOfService, respondingAddress, true, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#dataRequest(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void dataRequest(DataUnit userData)
|
||||
{
|
||||
this.provider.dataRequest(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#expeditedDataRequest(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void expeditedDataRequest(DataUnit userData)
|
||||
{
|
||||
this.provider.expeditedDataRequest(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#typedDataRequest(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void typedDataRequest(DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#typedDataRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#capabilityDataRequest(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void capabilityDataRequest(DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#capabilityDataRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#capabilityDataResponse(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void capabilityDataResponse(DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#capabilityDataResponse");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#tokenGiveRequest(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void tokenGiveRequest(int tokens, DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#tokenGiveRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#tokenPleaseRequest(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void tokenPleaseRequest(int tokens, DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#tokenPleaseRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#controlGiveRequest(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void controlGiveRequest(DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#controlGiveRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#syncMinorRequest(int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMinorRequest(int type, int dataSeparation,
|
||||
int firstSPSerialNumber, DataUnit userdata)
|
||||
{
|
||||
System.out.println("SessionLayer#syncMinorRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#syncMinorResponse(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMinorResponse(int firstSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#syncMinorResponse");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#syncMajorRequest(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMajorRequest(int firstSPSerialNumber, DataUnit userdata)
|
||||
{
|
||||
System.out.println("SessionLayer#syncMajorRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#syncMajorResponse(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMajorResponse(int secondSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#syncMajorResponse");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#resynchronizeRequest(int, int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void resynchronizeRequest(int firstResynchronizeType,
|
||||
int firstSPSerialNumber, int secondResynchronizeType,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userdata)
|
||||
{
|
||||
System.out.println("SessionLayer#resynchronizeRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#resynchronizeResponse(int, int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void resynchronizeResponse(int firstResynchronizeType,
|
||||
int firstSPSerialNumber, int secondResynchronizeType,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userdata)
|
||||
{
|
||||
System.out.println("SessionLayer#resynchronizeResponse");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#userExceptionReportRequest(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void userExceptionReportRequest(int reason, DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#userExceptionReportRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#activityStartRequest(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityStartRequest(int activityIdentifier, DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#activityStartRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#activityResumeRequest(int, int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityResumeRequest(int activityIdentifier,
|
||||
int oldActivityIdentifier, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int oldSessionConnectionIdentifier,
|
||||
DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#activityResumeRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#activityInterruptRequest(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityInterruptRequest(DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#activityInterruptRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#activityInterruptResponse(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityInterruptResponse(int reason, DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#activityInterruptResponse");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#activityDiscardRequest(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityDiscardRequest(int reason, DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#activityDiscardRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#activityDiscardResponse(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityDiscardResponse(DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#activityDiscardResponse");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#activityEndRequest(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityEndRequest(int firstSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#activityEndRequest");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#activityEndResponse(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityEndResponse(int secondSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#activityEndResponse");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#releaseRequest(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void releaseRequest(DataUnit userData)
|
||||
{
|
||||
this.provider.disconnectRequest(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#releaseResponse(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void releaseResponse(int result, DataUnit userData)
|
||||
{
|
||||
System.out.println("SessionLayer#releaseResponse");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionProvider#userAbortRequest(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void userAbortRequest(DataUnit userData)
|
||||
{
|
||||
this.provider.disconnectRequest(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#connectIndication(int, com.peetz.network.osi.AccessPoint, com.peetz.network.osi.AccessPoint, int, int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void connectIndication(int connectionIdentifier,
|
||||
AccessPoint callingAddress, AccessPoint calledAddress,
|
||||
int qualityOfService, int sessionRequirements,
|
||||
int firstSPSerialNumber, int secondSPSerialNumber,
|
||||
int assignmentOfTokens, DataUnit userData)
|
||||
{
|
||||
this.user.connectIndication(callingAddress, calledAddress, qualityOfService, 1, 1, sessionRequirements, firstSPSerialNumber, assignmentOfTokens, 1, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#connectConfirm(int, com.peetz.network.osi.AccessPoint, int, int, int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void connectConfirm(int connectionIdentifier,
|
||||
AccessPoint respondingAddress, int result, int qualityOfService,
|
||||
int sessionRequirements, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userData)
|
||||
{
|
||||
this.user.connectConfirm(respondingAddress, qualityOfService, 1, sessionRequirements, firstSPSerialNumber, assignmentOfTokens, 1, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#dataIndication(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void dataIndication(DataUnit userData)
|
||||
{
|
||||
this.user.dataIndication(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#expeditedDataIndication(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void expeditedDataIndication(DataUnit userData)
|
||||
{
|
||||
this.user.expeditedDataIndication(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#typedDataIndication(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void typedDataIndication(DataUnit userData)
|
||||
{
|
||||
this.user.typedDataIndication(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#capabilityDataIndication(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void capabilityDataIndication(DataUnit userData)
|
||||
{
|
||||
this.user.capabilityDataIndication(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#capabilityDataConfirm(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void capabilityDataConfirm(DataUnit userData)
|
||||
{
|
||||
this.user.capabilityDataConfirm(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#tokenGiveIndication(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void tokenGiveIndication(int tokens, DataUnit userData)
|
||||
{
|
||||
this.user.tokenGiveIndication(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#tokenPleaseIndication(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void tokenPleaseIndication(int tokens, DataUnit userData)
|
||||
{
|
||||
this.user.tokenPleaseIndication(tokens, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#controlGiveIndication(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void controlGiveIndication(DataUnit userData)
|
||||
{
|
||||
this.user.controlGiveIndication(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#syncMinorIndication(int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMinorIndication(int type, int dataSeparation,
|
||||
int firstSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
this.user.syncMinorIndication(type, firstSPSerialNumber, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#syncMinorConfirm(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMinorConfirm(int firstSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
this.user.syncMinorConfirm(firstSPSerialNumber, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#syncMajorIndication(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMajorIndication(int firstSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
this.user.syncMajorIndication(firstSPSerialNumber, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#syncMajorConfirm(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void syncMajorConfirm(int secondSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
this.user.syncMajorConfirm(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#resynchronizeIndication(int, int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void resynchronizeIndication(int firstResynchronizeType,
|
||||
int firstSPSerialNumber, int secondResynchronizeType,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userData)
|
||||
{
|
||||
this.user.resynchronizeIndication(firstResynchronizeType, firstResynchronizeType, assignmentOfTokens, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#resynchronizeConfirm(int, int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void resynchronizeConfirm(int firstResynchronizeType,
|
||||
int firstSPSerialNumber, int secondResynchronizeType,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userData)
|
||||
{
|
||||
this.user.resynchronizeConfirm(firstSPSerialNumber, assignmentOfTokens, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#providerExceptionReportIndication(int)
|
||||
*/
|
||||
public void providerExceptionReportIndication(int reason)
|
||||
{
|
||||
this.user.providerExceptionReportIndication(reason);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#userExceptionReportIndication(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void userExceptionReportIndication(int reason, DataUnit userData)
|
||||
{
|
||||
this.user.userExceptionReportIndication(reason, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#activityStartIndication(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityStartIndication(int activityIdentifier,
|
||||
DataUnit userData)
|
||||
{
|
||||
this.user.activityStartIndication(activityIdentifier, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#activityResumeIndication(int, int, int, int, int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityResumeIndication(int activityIdentifier,
|
||||
int oldActivityIdentifier, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int oldSessionConnectionIdentifier,
|
||||
DataUnit userData)
|
||||
{
|
||||
this.user.activityResumeIndication(activityIdentifier, oldActivityIdentifier, firstSPSerialNumber, oldSessionConnectionIdentifier, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#activityInterruptIndication(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityInterruptIndication(DataUnit userData)
|
||||
{
|
||||
this.user.activityInterruptIndication(1, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#activityInterruptConfirm(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityInterruptConfirm(int reason, DataUnit userData)
|
||||
{
|
||||
this.user.activityInterruptConfirm(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#activityDiscardIndication(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityDiscardIndication(int reason, DataUnit userData)
|
||||
{
|
||||
this.user.activityDiscardIndication(reason, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#activityDiscardConfirm(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityDiscardConfirm(DataUnit userData)
|
||||
{
|
||||
this.user.activityDiscardConfirm(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#activityEndIndication(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityEndIndication(int firstSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
this.user.activityEndIndication(firstSPSerialNumber, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#activityEndConfirm(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void activityEndConfirm(int secondSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
this.user.activityEndConfirm(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#releaseIndication(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void releaseIndication(DataUnit userData)
|
||||
{
|
||||
this.user.releaseIndication(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#releaseConfirm(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void releaseConfirm(int result, DataUnit userData)
|
||||
{
|
||||
this.user.releaseConfirm(result, userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#userAbortIndication(com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void userAbortIndication(DataUnit userData)
|
||||
{
|
||||
this.user.userAbortIndication(userData);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.peetz.network.osi.session.SessionUser#providerAbortIndication(int, com.peetz.network.osi.DataUnit)
|
||||
*/
|
||||
public void providerAbortIndication(int reason, DataUnit userData)
|
||||
{
|
||||
this.user.providerAbortIndication(reason);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
package de.thpeetz.network.osi.session;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public interface SessionProvider extends SessionService
|
||||
{
|
||||
void connectRequest(AccessPoint calledNSAP, AccessPoint calledTSAP,
|
||||
int connectionIdentifier, AccessPoint callingSSAP,
|
||||
AccessPoint calledSSAP, int qualityOfService,
|
||||
int sessionRequirements, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userData);
|
||||
|
||||
void connectResponse(int connectionIdentifier,
|
||||
AccessPoint respondingAddress, int result, int qualityOfService,
|
||||
int sessionRequirements, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userData);
|
||||
|
||||
void dataRequest(DataUnit userData);
|
||||
|
||||
void expeditedDataRequest(DataUnit userData);
|
||||
|
||||
void typedDataRequest(DataUnit userData);
|
||||
|
||||
void capabilityDataRequest(DataUnit userData);
|
||||
|
||||
void capabilityDataResponse(DataUnit userData);
|
||||
|
||||
void tokenGiveRequest(int tokens, DataUnit userData);
|
||||
|
||||
void tokenPleaseRequest(int tokens, DataUnit userData);
|
||||
|
||||
void controlGiveRequest(DataUnit userData);
|
||||
|
||||
void syncMinorRequest(int type, int dataSeparation,
|
||||
int firstSPSerialNumber, DataUnit userdata);
|
||||
|
||||
void syncMinorResponse(int firstSPSerialNumber, DataUnit userData);
|
||||
|
||||
void syncMajorRequest(int firstSPSerialNumber, DataUnit userdata);
|
||||
|
||||
void syncMajorResponse(int secondSPSerialNumber, DataUnit userData);
|
||||
|
||||
void resynchronizeRequest(int firstResynchronizeType,
|
||||
int firstSPSerialNumber, int secondResynchronizeType,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userdata);
|
||||
|
||||
void resynchronizeResponse(int firstResynchronizeType,
|
||||
int firstSPSerialNumber, int secondResynchronizeType,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userdata);
|
||||
|
||||
void userExceptionReportRequest(int reason, DataUnit userData);
|
||||
|
||||
void activityStartRequest(int activityIdentifier, DataUnit userData);
|
||||
|
||||
void activityResumeRequest(int activityIdentifier,
|
||||
int oldActivityIdentifier, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int oldSessionConnectionIdentifier,
|
||||
DataUnit userData);
|
||||
|
||||
void activityInterruptRequest(DataUnit userData);
|
||||
|
||||
void activityInterruptResponse(int reason, DataUnit userData);
|
||||
|
||||
void activityDiscardRequest(int reason, DataUnit userData);
|
||||
|
||||
void activityDiscardResponse(DataUnit userData);
|
||||
|
||||
void activityEndRequest(int firstSPSerialNumber, DataUnit userData);
|
||||
|
||||
void activityEndResponse(int secondSPSerialNumber, DataUnit userData);
|
||||
|
||||
void releaseRequest(DataUnit userData);
|
||||
|
||||
void releaseResponse(int result, DataUnit userData);
|
||||
|
||||
void userAbortRequest(DataUnit userData);
|
||||
}
|
||||
@@ -0,0 +1,160 @@
|
||||
package de.thpeetz.network.osi.session;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public interface SessionService
|
||||
{
|
||||
// category 0
|
||||
/**
|
||||
* GIVE TOKEN SPDU
|
||||
*/
|
||||
byte GT_SPDU = 0x01;
|
||||
/**
|
||||
* PLEASE TOKEN SPDU
|
||||
*/
|
||||
byte PT_SPDU = 0x02;
|
||||
|
||||
// category 1
|
||||
/**
|
||||
* CONNECT SPDU
|
||||
*/
|
||||
byte CN_SPDU = 0x0D;
|
||||
/**
|
||||
* OVERFLOW ACCEPT SPDU
|
||||
*/
|
||||
byte OA_SPDU = 0x10;
|
||||
/**
|
||||
* CONNECT DATA OVERFLOW SPDU
|
||||
*/
|
||||
byte CDO_SPDU = 0x0F;
|
||||
/**
|
||||
* ACCEPT SPDU
|
||||
*/
|
||||
byte AC_SPDU = 0x0E;
|
||||
/**
|
||||
* REFUSE SPDU
|
||||
*/
|
||||
byte RF_SPDU = 0x0C;
|
||||
/**
|
||||
* FINISH SPDU
|
||||
*/
|
||||
byte FN_SPDU = 0x09;
|
||||
/**
|
||||
* DISCONNECT SPDU
|
||||
*/
|
||||
byte DN_SPDU = 0x0A;
|
||||
/**
|
||||
* NOT FINISHED SPDU
|
||||
*/
|
||||
byte NF_SPDU = 0x08;
|
||||
/**
|
||||
* ABORT SPDU
|
||||
*/
|
||||
byte AB_SPDU = 0x19;
|
||||
/**
|
||||
* ABORT ACCEPT SPDU
|
||||
*/
|
||||
byte AA_SPDU = 0x1A;
|
||||
/**
|
||||
* GIVE TOKENS CONFIRM SPDU
|
||||
*/
|
||||
byte GTC_SPDU = 0x15;
|
||||
/**
|
||||
* GIVE TOKEN ACK SPDU
|
||||
*/
|
||||
byte GTA_SPDU = 0x16;
|
||||
/**
|
||||
* PREPARE SPDU
|
||||
*/
|
||||
byte PR_SPDU = 0x07;
|
||||
/**
|
||||
* TYPED DATA SPDU
|
||||
*/
|
||||
byte TD_SPDU = 0x21;
|
||||
|
||||
// category 2
|
||||
|
||||
/**
|
||||
* DATA TRANSFER SPDU
|
||||
*/
|
||||
byte DT_SPDU = 0x01;
|
||||
/**
|
||||
* MINOR SYNC POINT SPDU
|
||||
*/
|
||||
byte MIP_SPDU = 0x31;
|
||||
/**
|
||||
* MINOR SYNC ACK SPDU
|
||||
*/
|
||||
byte MIA_SPDU = 0x32;
|
||||
/**
|
||||
* MAJOR SYNC POINT SPDU
|
||||
*/
|
||||
byte MAP_SPDU = 0x29;
|
||||
/**
|
||||
* MAJOR SYNC ACK SPDU
|
||||
*/
|
||||
byte MAA_SPDU = 0x2A;
|
||||
/**
|
||||
* RESYNCHRONIZE SPDU
|
||||
*/
|
||||
byte RS_SPDU = 0x35;
|
||||
/**
|
||||
* RESYNCHRONIZE ACK SPDU
|
||||
*/
|
||||
byte RA_SPDU = 0x22;
|
||||
/**
|
||||
* ACTIVITY START SPDU
|
||||
*/
|
||||
byte AS_SPDU = 0x2D;
|
||||
/**
|
||||
* ACTIVITY RESUME SPDU
|
||||
*/
|
||||
byte AR_SPDU = 0x1D;
|
||||
/**
|
||||
* ACTIVITY DISCARD SPDU
|
||||
*/
|
||||
byte AD_SPDU = 0x39;
|
||||
/**
|
||||
* ACTIVITY DISCARD ACK SPDU
|
||||
*/
|
||||
byte ADA_SPDU = 0x3A;
|
||||
/**
|
||||
* ACTIVITY INTERRUPT SPDU
|
||||
*/
|
||||
byte AI_SPDU = 0x19;
|
||||
/**
|
||||
* ACTIVITY INTERRUPT ACK SPDU
|
||||
*/
|
||||
byte AIA_SPDU = 0x1A;
|
||||
/**
|
||||
* ACTIVITY END SPDU
|
||||
*/
|
||||
byte AE_SPDU = 0x29;
|
||||
/**
|
||||
* ACTIVITY END ACK
|
||||
*/
|
||||
byte AEA_SPDU = 0x2A;
|
||||
/**
|
||||
* CAPABILITY DATA SPDU
|
||||
*/
|
||||
byte CD_SPDU = 0x3D;
|
||||
/**
|
||||
* CAPABILITY DATA ACK SPDU
|
||||
*/
|
||||
byte CDA_SPDU = 0x3E;
|
||||
/**
|
||||
* EXCEPTION REPORT SPDU
|
||||
*/
|
||||
byte ER_SPDU = 0x00;
|
||||
/**
|
||||
* EXCEPTION DATA SPDU
|
||||
*/
|
||||
byte ED_SPDU = 0x30;
|
||||
|
||||
/**
|
||||
* EXPEDITED SPDU
|
||||
*/
|
||||
byte EX_SPDU = 0x05;
|
||||
}
|
||||
@@ -0,0 +1,87 @@
|
||||
package de.thpeetz.network.osi.session;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public interface SessionUser extends SessionService
|
||||
{
|
||||
void connectIndication(int connectionIdentifier,
|
||||
AccessPoint callingAddress, AccessPoint calledAddress,
|
||||
int qualityOfService, int sessionRequirements,
|
||||
int firstSPSerialNumber, int secondSPSerialNumber,
|
||||
int assignmentOfTokens, DataUnit userData);
|
||||
|
||||
void connectConfirm(int connectionIdentifier,
|
||||
AccessPoint respondingAddress, int result, int qualityOfService,
|
||||
int sessionRequirements, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userData);
|
||||
|
||||
void dataIndication(DataUnit userData);
|
||||
|
||||
void expeditedDataIndication(DataUnit userData);
|
||||
|
||||
void typedDataIndication(DataUnit userData);
|
||||
|
||||
void capabilityDataIndication(DataUnit userData);
|
||||
|
||||
void capabilityDataConfirm(DataUnit userData);
|
||||
|
||||
void tokenGiveIndication(int tokens, DataUnit userData);
|
||||
|
||||
void tokenPleaseIndication(int tokens, DataUnit userData);
|
||||
|
||||
void controlGiveIndication(DataUnit userData);
|
||||
|
||||
void syncMinorIndication(int type, int dataSeparation,
|
||||
int firstSPSerialNumber, DataUnit userData);
|
||||
|
||||
void syncMinorConfirm(int firstSPSerialNumber, DataUnit userData);
|
||||
|
||||
void syncMajorIndication(int firstSPSerialNumber, DataUnit userData);
|
||||
|
||||
void syncMajorConfirm(int secondSPSerialNumber, DataUnit userData);
|
||||
|
||||
void resynchronizeIndication(int firstResynchronizeType,
|
||||
int firstSPSerialNumber, int secondResynchronizeType,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userData);
|
||||
|
||||
void resynchronizeConfirm(int firstResynchronizeType,
|
||||
int firstSPSerialNumber, int secondResynchronizeType,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userData);
|
||||
|
||||
void providerExceptionReportIndication(int reason);
|
||||
|
||||
void userExceptionReportIndication(int reason, DataUnit userData);
|
||||
|
||||
void activityStartIndication(int activityIdentifier,
|
||||
DataUnit userData);
|
||||
|
||||
void activityResumeIndication(int activityIdentifier,
|
||||
int oldActivityIdentifier, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int oldSessionConnectionIdentifier,
|
||||
DataUnit userData);
|
||||
|
||||
void activityInterruptIndication(DataUnit userData);
|
||||
|
||||
void activityInterruptConfirm(int reason, DataUnit userData);
|
||||
|
||||
void activityDiscardIndication(int reason, DataUnit userData);
|
||||
|
||||
void activityDiscardConfirm(DataUnit userData);
|
||||
|
||||
void activityEndIndication(int firstSPSerialNumber, DataUnit userData);
|
||||
|
||||
void activityEndConfirm(int secondSPSerialNumber, DataUnit userData);
|
||||
|
||||
void releaseIndication(DataUnit userData);
|
||||
|
||||
void releaseConfirm(int result, DataUnit userData);
|
||||
|
||||
void userAbortIndication(DataUnit userData);
|
||||
|
||||
void providerAbortIndication(int reason, DataUnit userData);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package de.thpeetz.network.osi.transport;
|
||||
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
|
||||
public interface DataService
|
||||
{
|
||||
/**
|
||||
*
|
||||
* @param telegram
|
||||
*/
|
||||
void eventReceive(DataUnit telegram);
|
||||
|
||||
/**
|
||||
* eventSessionDown
|
||||
*
|
||||
*/
|
||||
void eventSessionDown();
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
*/
|
||||
void eventClose();
|
||||
}
|
||||
@@ -0,0 +1,102 @@
|
||||
package de.thpeetz.network.osi.transport;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.net.InetSocketAddress;
|
||||
import java.net.ServerSocket;
|
||||
import java.net.Socket;
|
||||
import java.net.UnknownHostException;
|
||||
import java.security.AccessController;
|
||||
import java.security.PrivilegedAction;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public class RFC1006Service {
|
||||
public static final int RFC1006PORT = 102;
|
||||
|
||||
private boolean manager = false;
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private boolean serverRun = true;
|
||||
|
||||
private Socket socket;
|
||||
|
||||
private TransportUser user;
|
||||
|
||||
Logger logger;
|
||||
|
||||
/**
|
||||
* Construct instance of RFC1006Service. This connects OSI-stack to sockets.
|
||||
* @param manager This value ist true when the stack is in manager mode.
|
||||
* @param user Reference to upper layer.
|
||||
*/
|
||||
public RFC1006Service(boolean manager, TransportUser user) {
|
||||
this.manager = manager;
|
||||
this.user = user;
|
||||
if (this.manager) {
|
||||
// TODO start socket in server mode
|
||||
}
|
||||
logger = Logger.getLogger(RFC1006Service.class.getName());
|
||||
}
|
||||
|
||||
public void close() {
|
||||
this.serverRun = false;
|
||||
}
|
||||
|
||||
public void listen() {
|
||||
try (ServerSocket server = new ServerSocket()) {
|
||||
server.bind(new InetSocketAddress("127.0.0.1", RFC1006PORT));
|
||||
server.accept();
|
||||
System.out.println("127.0.0.1:102 accepted");
|
||||
} catch (IOException e) {
|
||||
logger.log(Level.FINE, e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
public void connect(AccessPoint calledNSAP, DataUnit userData) {
|
||||
try {
|
||||
final String host = new String(calledNSAP.getData());
|
||||
//System.out.println("opening connection on " + host + " port " + rfc1006Port);
|
||||
|
||||
// Opening a socket connection may require to leave the sandbox.
|
||||
socket = (Socket)AccessController.doPrivileged(new PrivilegedAction<Object>() {
|
||||
public Object run() {
|
||||
Object result = null;
|
||||
|
||||
try {
|
||||
result = new Socket(host, RFC1006PORT);
|
||||
} catch (UnknownHostException exUnknownHost) {
|
||||
} catch (IOException exIO) {
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
});
|
||||
|
||||
if (socket != null) {
|
||||
// receiveQueue = new TelegramReceiveThread(socket, this);
|
||||
// receiveQueue.start();
|
||||
// sendQueue = new TelegramSendThread(socket, this);
|
||||
// sendQueue.start();
|
||||
userData.write((byte)userData.getLength());
|
||||
// writeRFC1006Header(userData);
|
||||
// sendQueue.pushTelegram(userData);
|
||||
} else {
|
||||
user.disconnectIndication(1, null);
|
||||
// eventSessionDown();
|
||||
}
|
||||
}
|
||||
//
|
||||
// catch (IOException exIO)
|
||||
// {
|
||||
// eventSessionDown();
|
||||
// }
|
||||
finally { }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,213 @@
|
||||
package de.thpeetz.network.osi.transport;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
import de.thpeetz.network.osi.session.SessionUser;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public class TransportLayer extends TransportService implements TransportProvider, TransportUser {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private SessionUser user;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private RFC1006Service service;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@SuppressWarnings("unused")
|
||||
private AccessPoint tsap;
|
||||
|
||||
/**
|
||||
* Only constructor for TransportLayer.
|
||||
* @param manager Should the stack be in manager or agent mode?
|
||||
* @param user Reference to upper layer
|
||||
* @param tsap address of transport layer
|
||||
*/
|
||||
public TransportLayer(final boolean manager, final SessionUser user, final AccessPoint tsap) {
|
||||
this.user = user;
|
||||
this.service = new RFC1006Service(manager, this);
|
||||
this.tsap = tsap;
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to open a connection to peer transport layer.
|
||||
* @see de.thpeetz.network.osi.transport.peetz.network.osi.transport.TransportProvider#connectRequest
|
||||
* (de.thpeetz.network.osi.peetz.network.osi.AccessPoint, de.thpeetz.network.osi.peetz.network.osi.AccessPoint,
|
||||
* de.thpeetz.network.osi.peetz.network.osi.AccessPoint, boolean, int, de.thpeetz.network.osi.peetz.network.osi.DataUnit)
|
||||
* @param calledNSAP NSAP address of peer network layer
|
||||
* @param calledTSAP TSAP address of peer transport layer
|
||||
* @param callerTSAP TSAP address of this transport layer
|
||||
* @param expeditedDataOption expedited data mode?
|
||||
* @param qualityOfService mode of QoS?
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
public final void connectRequest(final AccessPoint calledNSAP, final AccessPoint calledTSAP,
|
||||
final AccessPoint callerTSAP, final boolean expeditedDataOption,
|
||||
final int qualityOfService, final DataUnit userData) {
|
||||
System.out.println("TransportLayer#connectRequest");
|
||||
userData.write(calledTSAP.getData());
|
||||
userData.write(calledTSAP.getLength());
|
||||
userData.write((byte) 0xc2);
|
||||
userData.write(callerTSAP.getData());
|
||||
userData.write(callerTSAP.getLength());
|
||||
userData.write((byte) 0xc1);
|
||||
userData.write((byte) 0x0f);
|
||||
userData.write((byte) 0x01);
|
||||
userData.write((byte) 0xc0);
|
||||
userData.write((byte) 0x00); // class option
|
||||
userData.write(1); // src-ref
|
||||
userData.write(0); // dst-ref
|
||||
userData.write((byte) 0xe0);
|
||||
service.connect(calledNSAP, userData);
|
||||
}
|
||||
|
||||
/**
|
||||
* This message is sent when a requested connection is established.
|
||||
* @see de.thpeetz.network.osi.transport.peetz.network.osi.transport.TransportProvider#connectResponse
|
||||
* (int, de.thpeetz.network.osi.peetz.network.osi.AccessPoint, boolean, de.thpeetz.network.osi.peetz.network.osi.DataUnit)
|
||||
* @param qualityOfService
|
||||
* The qualityOfService parameter describes the possible
|
||||
* quality of service value.
|
||||
* @param respondingAddress
|
||||
* The parameter usually matches the called address.
|
||||
* @param expeditedDataOption
|
||||
* The expeditedDataOption parameter indicates wether the
|
||||
* expedited data option is to be available on the connection.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
public final void connectResponse(final int qualityOfService,
|
||||
final AccessPoint respondingAddress, final boolean expeditedDataOption,
|
||||
final DataUnit userData) {
|
||||
System.out.println("TransportLayer#connectResponse");
|
||||
}
|
||||
|
||||
/**
|
||||
* Request disconnect from peer.
|
||||
* @see de.thpeetz.network.osi.transport.peetz.network.osi.transport.TransportProvider#disconnectRequest(de.thpeetz.network.osi.peetz.network.osi.DataUnit)
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
public final void disconnectRequest(final DataUnit userData) {
|
||||
System.out.println("TransportLayer#disconnectRequest");
|
||||
byte[] drTpdu = new byte[7];
|
||||
drTpdu[0] = (byte) 0x06;
|
||||
drTpdu[1] = (byte) 0xC0;
|
||||
drTpdu[2] = (byte) 0x00;
|
||||
drTpdu[3] = (byte) 0x00;
|
||||
drTpdu[4] = (byte) 0x00;
|
||||
drTpdu[5] = (byte) 0x01;
|
||||
drTpdu[6] = (byte) 0x00;
|
||||
userData.setToWrite();
|
||||
userData.write(drTpdu);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see de.thpeetz.network.osi.transport.peetz.network.osi.transport.TransportProvider#dataRequest(de.thpeetz.network.osi.peetz.network.osi.DataUnit)
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
public final void dataRequest(final DataUnit userData) {
|
||||
System.out.println("TransportLayer#dataRequest");
|
||||
}
|
||||
|
||||
/**
|
||||
* @see de.thpeetz.network.osi.transport.peetz.network.osi.transport.TransportProvider#expeditedDataRequest(de.thpeetz.network.osi.peetz.network.osi.DataUnit)
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
public final void expeditedDataRequest(final DataUnit userData) {
|
||||
System.out.println("TransportLayer#expeditedDataRequest");
|
||||
}
|
||||
|
||||
/**
|
||||
* @see de.thpeetz.network.osi.transport.peetz.network.osi.transport.TransportUser#connectConfirm
|
||||
* (int, de.thpeetz.network.osi.peetz.network.osi.AccessPoint, boolean, de.thpeetz.network.osi.peetz.network.osi.DataUnit)
|
||||
* @param qualityOfService
|
||||
* The qualityOfService parameter describes the possible
|
||||
* quality of service value.
|
||||
* @param respondingAddress
|
||||
* The parameter usually matches the called address.
|
||||
* @param expeditedDataOption
|
||||
* The expeditedDataOption parameter indicates wether the
|
||||
* expedited data option is to be available on the connection.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
public final void connectConfirm(final int qualityOfService,
|
||||
final AccessPoint respondingAddress, final boolean expeditedDataOption,
|
||||
final DataUnit userData) {
|
||||
this.user.connectConfirm(1, respondingAddress, 1, qualityOfService, 1, 1, 1, 1, userData);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see de.thpeetz.network.osi.transport.peetz.network.osi.transport.TransportUser#connectIndication
|
||||
* (de.thpeetz.network.osi.peetz.network.osi.AccessPoint,
|
||||
* de.thpeetz.network.osi.peetz.network.osi.AccessPoint, boolean, int, de.thpeetz.network.osi.peetz.network.osi.DataUnit)
|
||||
* @param calledAddress
|
||||
* The parameter usually matches the called address.
|
||||
* @param callingAddress
|
||||
* The parameter usually matches the callers address.
|
||||
* @param expeditedDataOption
|
||||
* The expeditedDataOption parameter indicates wether the
|
||||
* expedited data option is to be available on the connection.
|
||||
* @param qualityOfService
|
||||
* The qualityOfService parameter describes the possible
|
||||
* quality of service value.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
public final void connectIndication(final AccessPoint calledAddress,
|
||||
final AccessPoint callingAddress, final boolean expeditedDataOption,
|
||||
final int qualityOfService, final DataUnit userData) {
|
||||
this.user.connectIndication(1, callingAddress, calledAddress, qualityOfService, 1, 1, 1, 1, userData);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see de.thpeetz.network.osi.transport.peetz.network.osi.transport.TransportUser#disconnectIndication(int, de.thpeetz.network.osi.DataUnit)
|
||||
* @param disconnectReason
|
||||
* Gives reason for disconnecting.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
public final void disconnectIndication(final int disconnectReason, final DataUnit userData) {
|
||||
this.user.releaseIndication(userData);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see de.thpeetz.network.osi.transport.peetz.network.osi.transport.TransportUser#dataIndication(de.thpeetz.network.osi.DataUnit)
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
public final void dataIndication(final DataUnit userData) {
|
||||
this.user.dataIndication(userData);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see de.thpeetz.network.osi.transport.peetz.network.osi.transport.TransportUser#expeditedDataIndication(de.thpeetz.network.osi.peetz.network.osi.DataUnit)
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
public final void expeditedDataIndication(final DataUnit userData) {
|
||||
this.user.expeditedDataIndication(userData);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
package de.thpeetz.network.osi.transport;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
|
||||
/**
|
||||
* Methods provided by transport layer. Interface to upper layer.
|
||||
* @author Thomas Peetz
|
||||
*/
|
||||
public interface TransportProvider {
|
||||
/**
|
||||
* Request a connection to corresponding transport layer peer.
|
||||
* @param calledNSAP
|
||||
* NSAP address to be called.
|
||||
* @param calledTSAP
|
||||
* TSAP address to be called.
|
||||
* @param callerTSAP
|
||||
* TSAP address of connection requester.
|
||||
* @param expeditedDataOption
|
||||
* The expeditedDataOption parameter indicates wether the
|
||||
* expedited data option is to be available on the connection.
|
||||
* @param qualityOfService
|
||||
* The qualityOfService parameter describes the possible
|
||||
* quality of service value.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
void connectRequest(AccessPoint calledNSAP, AccessPoint calledTSAP,
|
||||
AccessPoint callerTSAP, boolean expeditedDataOption,
|
||||
int qualityOfService, DataUnit userData);
|
||||
|
||||
/**
|
||||
* Confirm a requested connection.
|
||||
* @param qualityOfService
|
||||
* The qualityOfService parameter describes the possible
|
||||
* quality of service value.
|
||||
* @param respondingAddress
|
||||
* The parameter usually matches the called address.
|
||||
* @param expeditedDataOption
|
||||
* The expeditedDataOption parameter indicates wether the
|
||||
* expedited data option is to be available on the connection.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
void connectResponse(int qualityOfService,
|
||||
AccessPoint respondingAddress, boolean expeditedDataOption,
|
||||
DataUnit userData);
|
||||
|
||||
/**
|
||||
* Request a disconnect from peer.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
void disconnectRequest(DataUnit userData);
|
||||
|
||||
/**
|
||||
* Send message to peer.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
void dataRequest(DataUnit userData);
|
||||
|
||||
/**
|
||||
* Send message to peer.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
void expeditedDataRequest(DataUnit userData);
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
package de.thpeetz.network.osi.transport;
|
||||
|
||||
/**
|
||||
* Definitions for transport layer.
|
||||
* @author Thomas Peetz
|
||||
*/
|
||||
public abstract class TransportService {
|
||||
/**
|
||||
* Connection Request TPDU.
|
||||
*/
|
||||
public static final int CR_TPDU = 0xE0;
|
||||
/**
|
||||
* Connection Confirm TPDU.
|
||||
*/
|
||||
public static final int CC_TPDU = 0xD0;
|
||||
/**
|
||||
* Disconnect Request TPDU.
|
||||
*/
|
||||
public static final int DR_TPDU = 0x80;
|
||||
/**
|
||||
* Disconnect Confirm TPDU.
|
||||
*/
|
||||
public static final int DC_TPDU = 0xC0;
|
||||
/**
|
||||
* Data TPDU.
|
||||
*/
|
||||
public static final int DT_TPDU = 0xF0;
|
||||
/**
|
||||
* Expedited Data TPDU.
|
||||
*/
|
||||
public static final int ED_TPDU = 0x10;
|
||||
/**
|
||||
* Data Acknowledge TPDU.
|
||||
*/
|
||||
public static final int AK_TPDU = 0x60;
|
||||
/**
|
||||
* Expedited Acknowledge TPDU.
|
||||
*/
|
||||
public static final int EA_TPDU = 0x20;
|
||||
/**
|
||||
* Reject TPDU.
|
||||
*/
|
||||
public static final int RJ_TPDU = 0x50;
|
||||
/**
|
||||
* Error TPDU.
|
||||
*/
|
||||
public static final int ER_TPDU = 0x70;
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
package de.thpeetz.network.osi.transport;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
*/
|
||||
public interface TransportUser {
|
||||
/**
|
||||
* connectConfirm.
|
||||
*
|
||||
* @param qualityOfService
|
||||
* The qualityOfService parameter describes the possible
|
||||
* quality of service value.
|
||||
* @param respondingAddress
|
||||
* The parameter usually matches the called address.
|
||||
* @param expeditedDataOption
|
||||
* The expeditedDataOption parameter indicates wether the
|
||||
* expedited data option is to be available on the connection.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
void connectConfirm(int qualityOfService,
|
||||
AccessPoint respondingAddress, boolean expeditedDataOption,
|
||||
DataUnit userData);
|
||||
|
||||
/**
|
||||
* connectIndication.
|
||||
*
|
||||
* @param calledAddress
|
||||
* The calledAddress parameter conveyes the address of the TSAP
|
||||
* to which the connection is to be established.
|
||||
* @param callingAddress
|
||||
* The callingAddress parameter conveyes the address of the TSAP
|
||||
* from which the connection has been requested.
|
||||
* @param expeditedDataOption
|
||||
* The expeditedDataOption parameter indicates wether the
|
||||
* expedited data option is to be available on the connection.
|
||||
* @param qualityOfService
|
||||
* The qualityOfService parameter describes the possible
|
||||
* quality of service value.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
void connectIndication(AccessPoint calledAddress,
|
||||
AccessPoint callingAddress, boolean expeditedDataOption,
|
||||
int qualityOfService, DataUnit userData);
|
||||
|
||||
/**
|
||||
* disconnectindication.
|
||||
* @param disconnectReason
|
||||
* Gives reason for disconnecting.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
void disconnectIndication(int disconnectReason, DataUnit userData);
|
||||
|
||||
/**
|
||||
* Receives data from peer.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
void dataIndication(DataUnit userData);
|
||||
|
||||
/**
|
||||
* expeditedDataIndication.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
void expeditedDataIndication(DataUnit userData);
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package de.thpeetz.network.osi.transport;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
|
||||
public interface User {
|
||||
/**
|
||||
* connectConfirm.
|
||||
*
|
||||
* @param qualityOfService
|
||||
* The qualityOfService parameter describes the possible
|
||||
* quality of service value.
|
||||
* @param respondingAddress
|
||||
* The parameter usually matches the called address.
|
||||
* @param expeditedDataOption
|
||||
* The expeditedDataOption parameter indicates wether the
|
||||
* expedited data option is to be available on the connection.
|
||||
* @param userData
|
||||
* This parameter allows the transfer of user-data between users
|
||||
* without modification by the transport service provider.
|
||||
*/
|
||||
void connectConfirm(int qualityOfService,
|
||||
AccessPoint respondingAddress, boolean expeditedDataOption,
|
||||
DataUnit userData);
|
||||
}
|
||||
@@ -0,0 +1,97 @@
|
||||
package de.thpeetz.tools;
|
||||
|
||||
import java.util.Vector;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import de.thpeetz.network.osi.transport.RFC1006Service;
|
||||
|
||||
/**
|
||||
* @author Thomas Peetz
|
||||
*
|
||||
* @param <T> type of objects in ObjectPool
|
||||
*/
|
||||
public class ObjectPool<T> {
|
||||
/**
|
||||
* Vector of unused object references.
|
||||
*/
|
||||
private final Vector<T> freeStack;
|
||||
|
||||
Logger logger;
|
||||
|
||||
/**
|
||||
* Construct an object pool for a specific class type.
|
||||
*
|
||||
* @param clazz
|
||||
* Class type of object pool
|
||||
* @throws IllegalAccessException
|
||||
* @throws InstantiationException
|
||||
*/
|
||||
public ObjectPool(final Class<T> clazz) {
|
||||
this.freeStack = new Vector<T>();
|
||||
init(clazz);
|
||||
logger = Logger.getLogger(ObjectPool.class.getName());
|
||||
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* Construct an object pool for a specific class type. Initialize object
|
||||
* pool with given number of objects.
|
||||
*
|
||||
* @param clazz
|
||||
* Class type of object pool
|
||||
* @param size
|
||||
* Initial number of objects in pool
|
||||
* @throws IllegalAccessException
|
||||
* @throws InstantiationException
|
||||
***************************************************************************/
|
||||
public ObjectPool(final Class<T> clazz, final int size) {
|
||||
this.freeStack = new Vector<T>(size);
|
||||
init(clazz);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* Construct an object pool for a specific class type. Initialize object
|
||||
* pool with number of objects equal to stack size.
|
||||
*
|
||||
* @param clazz
|
||||
* Class type of object pool
|
||||
***************************************************************************/
|
||||
private void init(final Class<T> clazz) {
|
||||
for (int i = 0; i < freeStack.capacity(); i++) {
|
||||
try {
|
||||
freeStack.add(i, clazz.newInstance());
|
||||
} catch (InstantiationException e) {
|
||||
logger.log(Level.FINE, e.getMessage());
|
||||
} catch (IllegalAccessException e) {
|
||||
logger.log(Level.FINE, e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get instance from object pool.
|
||||
*
|
||||
* @return Reference of object
|
||||
*/
|
||||
public final synchronized T getInstance() {
|
||||
// Check if the pool is empty.
|
||||
if (this.freeStack.isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
// Remove object from end of free pool.
|
||||
T result = this.freeStack.lastElement();
|
||||
this.freeStack.setSize(this.freeStack.size() - 1);
|
||||
return result;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* Return object to object pool.
|
||||
*
|
||||
* @param obj
|
||||
* Reference of unsed object
|
||||
***************************************************************************/
|
||||
public final synchronized void freeInstance(final T obj) {
|
||||
this.freeStack.addElement(obj);
|
||||
}
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
/*
|
||||
* This Java source file was generated by the Gradle 'init' task.
|
||||
*/
|
||||
package com.ibtp.network.osi;
|
||||
|
||||
import org.junit.Test;
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class LibraryTest {
|
||||
@Test public void testSomeLibraryMethod() {
|
||||
Library classUnderTest = new Library();
|
||||
assertTrue("someLibraryMethod should return 'true'", classUnderTest.someLibraryMethod());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
package de.thpeetz.network.osi;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
public class AccessPointTest {
|
||||
|
||||
@Test
|
||||
void testAccessPoint() {
|
||||
AccessPoint ap = new AccessPoint();
|
||||
assertNotNull(ap);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testAccessPointString() {
|
||||
AccessPoint ap = new AccessPoint("ap12");
|
||||
assertEquals("ap12", ap.getString());
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetString() {
|
||||
AccessPoint ap = new AccessPoint("ap12");
|
||||
assertEquals("ap12", ap.getString());
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetData() {
|
||||
AccessPoint ap = new AccessPoint("ap12");
|
||||
assertEquals(4, ap.getData().length);
|
||||
byte[] expected = {97, 112, 49,50};
|
||||
int i=0;
|
||||
for (byte b : expected) {
|
||||
assertEquals(b, ap.getData()[i]);
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetLength() {
|
||||
AccessPoint ap = new AccessPoint("ap12");
|
||||
assertEquals(4, ap.getData().length);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
package de.thpeetz.network.osi;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
||||
|
||||
import org.junit.jupiter.api.Disabled;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
/**
|
||||
* @author tpeetz
|
||||
*
|
||||
*/
|
||||
public class DataUnitManagerTest {
|
||||
|
||||
/**
|
||||
* Test method for
|
||||
* {@link de.thpeetz.network.osi.DataUnitManager#DataUnitManager()}.
|
||||
*/
|
||||
@Test
|
||||
public void testDataUnitManager() {
|
||||
DataUnitManager manager = new DataUnitManager();
|
||||
assertNotNull(manager);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for
|
||||
* {@link de.thpeetz.network.osi.DataUnitManager#getManager()}.
|
||||
*/
|
||||
@Test
|
||||
public void testGetManager() {
|
||||
DataUnitManager manager = DataUnitManager.getManager();
|
||||
assertNotNull(manager);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for
|
||||
* {@link de.thpeetz.network.osi.DataUnitManager#getInstance()}.
|
||||
*/
|
||||
@Test
|
||||
public void testGetInstance() {
|
||||
DataUnit unit = DataUnitManager.getInstance();
|
||||
assertNotNull(unit);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for
|
||||
* {@link de.thpeetz.network.osi.DataUnitManager#freeInstance(de.thpeetz.network.osi.DataUnit)}
|
||||
* .
|
||||
*/
|
||||
@Test
|
||||
@Disabled
|
||||
public void testFreeInstance() {
|
||||
DataUnit unit = DataUnitManager.getInstance();
|
||||
assertNotNull(unit);
|
||||
DataUnitManager.freeInstance(unit);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,148 @@
|
||||
package de.thpeetz.network.osi;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
public class DataUnitTest{
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.DataUnit()'
|
||||
*/
|
||||
@Test
|
||||
public void testDataUnit() {
|
||||
DataUnit data = new DataUnit();
|
||||
assertNotNull(data);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.initialize(byte[])'
|
||||
*/
|
||||
@Test
|
||||
public void testInitializeByteArray() {
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.initialize()'
|
||||
*/
|
||||
@Test
|
||||
public void testInitialize() {
|
||||
DataUnit data = new DataUnit();
|
||||
data.initialize();
|
||||
assertEquals(0, data.getLength());
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.addBuffer(byte[])'
|
||||
*/
|
||||
@Test
|
||||
public void testAddBuffer() {
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.setToWrite()'
|
||||
*/
|
||||
@Test
|
||||
public void testSetToWrite() {
|
||||
DataUnit data = new DataUnit();
|
||||
data.setToWrite();
|
||||
assertEquals(data.getLength(), 0);
|
||||
data.write(3);
|
||||
assertEquals(data.getLength(), 2);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.setToRead()'
|
||||
*/
|
||||
@Test
|
||||
public void testSetToRead() {
|
||||
DataUnit data = new DataUnit();
|
||||
data.setToRead();
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.write(byte[])'
|
||||
*/
|
||||
@Test
|
||||
public void testWriteByteArray() {
|
||||
DataUnit data = new DataUnit();
|
||||
data.setToWrite();
|
||||
assertEquals(data.getLength(), 0);
|
||||
data.write(new byte[]{ (byte) 0x01, (byte) 0x03});
|
||||
assertEquals(2, data.getLength());
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.write(byte)'
|
||||
*/
|
||||
@Test
|
||||
public void testWriteByte() {
|
||||
DataUnit data = new DataUnit();
|
||||
data.setToWrite();
|
||||
assertEquals(data.getLength(), 0);
|
||||
data.write( (byte) 0x05);
|
||||
assertEquals(1, data.getLength());
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.write(int)'
|
||||
*/
|
||||
@Test
|
||||
public void testWriteInt() {
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.read()'
|
||||
*/
|
||||
@Test
|
||||
public void testRead() {
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.read(int)'
|
||||
*/
|
||||
@Test
|
||||
public void testReadInt() {
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.readInt()'
|
||||
*/
|
||||
@Test
|
||||
public void testReadInt1() {
|
||||
DataUnit data = new DataUnit();
|
||||
data.setToWrite();
|
||||
data.write(5);
|
||||
assertEquals(data.readInt(), 5);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.getBuffer()'
|
||||
*/
|
||||
@Test
|
||||
public void testGetBuffer() {
|
||||
DataUnit data = new DataUnit();
|
||||
byte[] buffer = data.getBuffer();
|
||||
assertNotNull(buffer);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.getBuffer(int)'
|
||||
*/
|
||||
@Test
|
||||
public void testGetBufferInt() {
|
||||
DataUnit data = new DataUnit();
|
||||
byte[] buffer = data.getBuffer(3);
|
||||
assertEquals(buffer.length, 3);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.network.osi.DataUnit.getLength()'
|
||||
*/
|
||||
@Test
|
||||
public void testGetLength() {
|
||||
DataUnit data = new DataUnit();
|
||||
assertEquals(data.getLength(), 0);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package de.thpeetz.network.osi;
|
||||
|
||||
public class OsiTests
|
||||
{
|
||||
public static AccessPoint calledNSAP = new AccessPoint("127.0.0.1");
|
||||
public static AccessPoint calledTSAP = new AccessPoint("tl2");
|
||||
public static AccessPoint callerTSAP = new AccessPoint("tl1");
|
||||
public static AccessPoint callerSSAP = new AccessPoint("sl1");
|
||||
}
|
||||
@@ -0,0 +1,445 @@
|
||||
package de.thpeetz.network.osi.presentation;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
import de.thpeetz.network.osi.DataUnitManager;
|
||||
import de.thpeetz.network.osi.OsiTests;
|
||||
|
||||
public class PresentationLayerTest {
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.PresentationLayer()'
|
||||
*/
|
||||
@Test
|
||||
public final void testPresentationLayer() {
|
||||
PresentationLayer layer = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
assertNotNull(layer);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.connectRequest(AccessPoint,
|
||||
* AccessPoint, AccessPoint, AccessPoint, AccessPoint, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testConnectRequest() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
assertNotNull(presentation);
|
||||
DataUnit data = DataUnitManager.getInstance();
|
||||
assertNotNull(data);
|
||||
presentation.connectRequest(OsiTests.calledNSAP, OsiTests.calledTSAP,
|
||||
null, null, null, 1, data);
|
||||
DataUnitManager.freeInstance(data);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.releaseRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testReleaseRequest() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
DataUnit data = DataUnitManager.getInstance();
|
||||
presentation.releaseRequest(data);
|
||||
DataUnitManager.freeInstance(data);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.dataRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testDataRequest() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.dataRequest(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.userAbortRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testUserAbortRequest() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
DataUnit data = DataUnitManager.getInstance();
|
||||
presentation.userAbortRequest(data);
|
||||
DataUnitManager.freeInstance(data);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.connectIndication(AccessPoint,
|
||||
* AccessPoint, int, int, int, int, int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testConnectIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.connectIndication(null, null, 1, 1, 1, 1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.connectConfirm(AccessPoint,
|
||||
* int, int, int, int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testConnectConfirm() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.connectConfirm(null, 1, 1, 1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.userAbortIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testUserAbortIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.userAbortIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.providerAbortIndication(int)'
|
||||
*/
|
||||
@Test
|
||||
public final void testProviderAbortIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.providerAbortIndication(1);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.alterContextIndication(int,
|
||||
* int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testAlterContextIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.alterContextIndication(1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.alterContextConfirm(int,
|
||||
* int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testAlterContextConfirm() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.alterContextConfirm(1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.typedDataIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testTypedDataIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.typedDataIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.dataIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testDataIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.dataIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.resynchronizeIndication(int,
|
||||
* int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testResynchronizeIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.resynchronizeIndication(1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.resynchronizeConfirm(int,
|
||||
* int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testResynchronizeConfirm() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.resynchronizeConfirm(1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.activityStartIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityStartIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.activityStartIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.activityResumeIndication(int,
|
||||
* int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityResumeIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.activityResumeIndication(1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.activityInterruptIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityInterruptIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.activityInterruptIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.activityInterruptConfirm(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityInterruptConfirm() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.activityInterruptConfirm(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.activityDiscardIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityDiscardIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.activityDiscardIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.activityDiscardConfirm(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityDiscardConfirm() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.activityDiscardConfirm(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.activityEndIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityEndIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.activityEndIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.activityEndConfirm(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityEndConfirm() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.activityEndConfirm(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.capabilityDataIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testCapabilityDataIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.capabilityDataIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.capabilityDataConfirm(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testCapabilityDataConfirm() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.capabilityDataConfirm(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.controlGiveIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testControlGiveIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.controlGiveIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.tokenGiveIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testTokenGiveIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.tokenGiveIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.tokenPleaseIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testTokenPleaseIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.tokenPleaseIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.userExceptionReportIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testUserExceptionReportIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.userExceptionReportIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.providerExceptionReportIndication(int)'
|
||||
*/
|
||||
@Test
|
||||
public final void testProviderExceptionReportIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.providerExceptionReportIndication(1);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.expeditedDataIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testExpeditedDataIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.expeditedDataIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.syncMinorIndication(int,
|
||||
* int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMinorIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.syncMinorIndication(1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.syncMinorConfirm(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMinorConfirm() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.syncMinorConfirm(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.syncMajorIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMajorIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.syncMajorIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.syncMajorConfirm(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMajorConfirm() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.syncMajorConfirm(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.releaseIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testReleaseIndication() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.releaseIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.presentation.PresentationLayer.releaseConfirm(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testReleaseConfirm() {
|
||||
PresentationLayer presentation = new PresentationLayer(false,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
presentation.releaseConfirm(1, null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,153 @@
|
||||
package de.thpeetz.network.osi.session;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
import de.thpeetz.network.osi.presentation.PresentationUser;
|
||||
|
||||
public class PresentationMockObject implements PresentationUser
|
||||
{
|
||||
|
||||
public void connectIndication(AccessPoint callingAddress,
|
||||
AccessPoint calledAddress, int qualityOfService,
|
||||
int representationRequirements, int mode, int sessionRequirements,
|
||||
int initialSPSerialNumber, int assignmentOfTokens,
|
||||
int sessionConnectionIdentifier, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void connectConfirm(AccessPoint respondingAddress,
|
||||
int qualityOfService, int representationRequirements,
|
||||
int sessionRequirements, int initialSPSerialNumber,
|
||||
int assignmentOfTokens, int sessionConnectionIdentifier,
|
||||
DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void userAbortIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void providerAbortIndication(int providerReason)
|
||||
{
|
||||
}
|
||||
|
||||
public void alterContextIndication(int additionList, int deletionList,
|
||||
int additionResultList, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void alterContextConfirm(int additionResultList,
|
||||
int deletionResultList, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void typedDataIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void dataIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void resynchronizeIndication(int type, int sPSerialNumber,
|
||||
int tokens, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void resynchronizeConfirm(int sPSerialNumber, int tokens,
|
||||
DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityStartIndication(int activityIdentifier,
|
||||
DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityResumeIndication(int activityIdentifier,
|
||||
int oldActivityIdentifier, int sPSerialNumber,
|
||||
int oldSessionIdentifier, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityInterruptIndication(int reason, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityInterruptConfirm(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityDiscardIndication(int reason, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityDiscardConfirm(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityEndIndication(int sPSerialNumber, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityEndConfirm(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void capabilityDataIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void capabilityDataConfirm(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void controlGiveIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void tokenGiveIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void tokenPleaseIndication(int tokens, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void userExceptionReportIndication(int reason, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void providerExceptionReportIndication(int reason)
|
||||
{
|
||||
}
|
||||
|
||||
public void expeditedDataIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void syncMinorIndication(int type, int sPSerialNumber,
|
||||
DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void syncMinorConfirm(int sPSerialNumber, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void syncMajorIndication(int sPSerialNumber, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void syncMajorConfirm(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void releaseIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void releaseConfirm(int result, DataUnit userData)
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,706 @@
|
||||
package de.thpeetz.network.osi.session;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
import de.thpeetz.network.osi.DataUnitManager;
|
||||
import de.thpeetz.network.osi.OsiTests;
|
||||
import de.thpeetz.network.osi.presentation.PresentationUser;
|
||||
|
||||
public class SessionLayerTest {
|
||||
private PresentationUser presentation = new PresentationMockObject();
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.SessionLayer(PresentationUser)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSessionLayer() {
|
||||
assertEquals(SessionLayer.ER_SPDU, 0);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.connectRequest(AccessPoint,
|
||||
* AccessPoint, int, AccessPoint, AccessPoint, int, int, int, int, int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testConnectRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
DataUnit data = DataUnitManager.getInstance();
|
||||
session.connectRequest(OsiTests.calledNSAP, OsiTests.calledTSAP, 1,
|
||||
null, null, 1, 1, 1, 1, 1, data);
|
||||
DataUnitManager.freeInstance(data);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.connectResponse(int,
|
||||
* AccessPoint, int, int, int, int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testConnectResponse() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.connectResponse(1, null, 1, 1, 1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.dataRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testDataRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.dataRequest(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.expeditedDataRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testExpeditedDataRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.expeditedDataRequest(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.typedDataRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testTypedDataRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.typedDataRequest(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.capabilityDataRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testCapabilityDataRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.capabilityDataRequest(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.capabilityDataResponse(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testCapabilityDataResponse() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.capabilityDataResponse(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.tokenGiveRequest(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testTokenGiveRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.tokenGiveRequest(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.tokenPleaseRequest(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testTokenPleaseRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.tokenPleaseRequest(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.controlGiveRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testControlGiveRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.controlGiveRequest(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.syncMinorRequest(int, int,
|
||||
* int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMinorRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.syncMinorRequest(1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.syncMinorResponse(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMinorResponse() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.syncMinorResponse(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.syncMajorRequest(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMajorRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.syncMajorRequest(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.syncMajorResponse(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMajorResponse() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.syncMajorResponse(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.resynchronizeRequest(int,
|
||||
* int, int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testResynchronizeRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.resynchronizeRequest(1, 1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.resynchronizeResponse(int,
|
||||
* int, int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testResynchronizeResponse() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.resynchronizeResponse(1, 1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.userExceptionReportRequest(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testUserExceptionReportRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.userExceptionReportRequest(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityStartRequest(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityStartRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityStartRequest(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityResumeRequest(int,
|
||||
* int, int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityResumeRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityResumeRequest(1, 1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityInterruptRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityInterruptRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityInterruptRequest(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityInterruptResponse(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityInterruptResponse() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityInterruptResponse(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityDiscardRequest(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityDiscardRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityDiscardRequest(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityDiscardResponse(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityDiscardResponse() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityDiscardResponse(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityEndRequest(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityEndRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityEndRequest(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityEndResponse(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityEndResponse() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityEndResponse(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.releaseRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testReleaseRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
DataUnit data = DataUnitManager.getInstance();
|
||||
session.releaseRequest(data);
|
||||
DataUnitManager.freeInstance(data);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.releaseResponse(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testReleaseResponse() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.releaseResponse(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.userAbortRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testUserAbortRequest() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
DataUnit data = DataUnitManager.getInstance();
|
||||
session.userAbortRequest(data);
|
||||
DataUnitManager.freeInstance(data);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.connectIndication(int,
|
||||
* AccessPoint, AccessPoint, int, int, int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testConnectIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.connectIndication(1, null, null, 1, 1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.connectConfirm(int,
|
||||
* AccessPoint, int, int, int, int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testConnectConfirm() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.connectConfirm(1, null, 1, 1, 1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.dataIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testDataIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.dataIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.expeditedDataIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testExpeditedDataIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.expeditedDataIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.typedDataIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testTypedDataIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.typedDataIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.capabilityDataIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testCapabilityDataIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.capabilityDataIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.capabilityDataConfirm(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testCapabilityDataConfirm() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.capabilityDataConfirm(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.tokenGiveIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testTokenGiveIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.tokenGiveIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.tokenPleaseIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testTokenPleaseIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.tokenPleaseIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.controlGiveIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testControlGiveIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.controlGiveIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.syncMinorIndication(int, int,
|
||||
* int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMinorIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.syncMinorIndication(1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.syncMinorConfirm(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMinorConfirm() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.syncMinorConfirm(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.syncMajorIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMajorIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.syncMajorIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.syncMajorConfirm(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testSyncMajorConfirm() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.syncMajorConfirm(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.resynchronizeIndication(int,
|
||||
* int, int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testResynchronizeIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.resynchronizeIndication(1, 1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.resynchronizeConfirm(int,
|
||||
* int, int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testResynchronizeConfirm() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.resynchronizeConfirm(1, 1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.providerExceptionReportIndication(int)'
|
||||
*/
|
||||
@Test
|
||||
public final void testProviderExceptionReportIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.providerExceptionReportIndication(1);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.userExceptionReportIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testUserExceptionReportIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.userExceptionReportIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityStartIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityStartIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityStartIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityResumeIndication(int,
|
||||
* int, int, int, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityResumeIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityResumeIndication(1, 1, 1, 1, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityInterruptIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityInterruptIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityInterruptIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityInterruptConfirm(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityInterruptConfirm() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityInterruptConfirm(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityDiscardIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityDiscardIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityDiscardIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityDiscardConfirm(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityDiscardConfirm() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityDiscardConfirm(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityEndIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityEndIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityEndIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.activityEndConfirm(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testActivityEndConfirm() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.activityEndConfirm(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.releaseIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testReleaseIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.releaseIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.releaseConfirm(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testReleaseConfirm() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.releaseConfirm(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.userAbortIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testUserAbortIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.userAbortIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.session.SessionLayer.providerAbortIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testProviderAbortIndication() {
|
||||
SessionLayer session = new SessionLayer(false, this.presentation,
|
||||
OsiTests.callerSSAP, OsiTests.callerTSAP);
|
||||
session.providerAbortIndication(1, null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,145 @@
|
||||
package de.thpeetz.network.osi.transport;
|
||||
|
||||
import de.thpeetz.network.osi.AccessPoint;
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
import de.thpeetz.network.osi.session.SessionUser;
|
||||
|
||||
public class SessionMockObject implements SessionUser
|
||||
{
|
||||
|
||||
public void connectIndication(int connectionIdentifier,
|
||||
AccessPoint callingAddress, AccessPoint calledAddress,
|
||||
int qualityOfService, int sessionRequirements,
|
||||
int firstSPSerialNumber, int secondSPSerialNumber,
|
||||
int assignmentOfTokens, DataUnit userdata)
|
||||
{
|
||||
}
|
||||
|
||||
public void connectConfirm(int connectionIdentifier,
|
||||
AccessPoint respondingAddress, int result, int qualityOfService,
|
||||
int sessionRequirements, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void dataIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void expeditedDataIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void typedDataIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void capabilityDataIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void capabilityDataConfirm(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void tokenGiveIndication(int tokens, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void tokenPleaseIndication(int tokens, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void controlGiveIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void syncMinorIndication(int type, int dataSeparation,
|
||||
int firstSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void syncMinorConfirm(int firstSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void syncMajorIndication(int firstSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void syncMajorConfirm(int secondSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void resynchronizeIndication(int firstResynchronizeType,
|
||||
int firstSPSerialNumber, int secondResynchronizeType,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userdata)
|
||||
{
|
||||
}
|
||||
|
||||
public void resynchronizeConfirm(int firstResynchronizeType,
|
||||
int firstSPSerialNumber, int secondResynchronizeType,
|
||||
int secondSPSerialNumber, int assignmentOfTokens, DataUnit userdata)
|
||||
{
|
||||
}
|
||||
|
||||
public void providerExceptionReportIndication(int reason)
|
||||
{
|
||||
}
|
||||
|
||||
public void userExceptionReportIndication(int reason, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityStartIndication(int activityIdentifier,
|
||||
DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityResumeIndication(int activityIdentifier,
|
||||
int oldActivityIdentifier, int firstSPSerialNumber,
|
||||
int secondSPSerialNumber, int oldSessionConnectionIdentifier,
|
||||
DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityInterruptIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityInterruptConfirm(int reason, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityDiscardIndication(int reason, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityDiscardConfirm(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityEndIndication(int firstSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void activityEndConfirm(int secondSPSerialNumber, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void releaseIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void releaseConfirm(int result, DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void userAbortIndication(DataUnit userData)
|
||||
{
|
||||
}
|
||||
|
||||
public void providerAbortIndication(int reason, DataUnit userData)
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,142 @@
|
||||
package de.thpeetz.network.osi.transport;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
import de.thpeetz.network.osi.DataUnitManager;
|
||||
import de.thpeetz.network.osi.OsiTests;
|
||||
|
||||
public class TransportLayerTest {
|
||||
private SessionMockObject session = new SessionMockObject();
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.transport.TransportLayer.TransportLayer(SessionUser)'
|
||||
*/
|
||||
@Test
|
||||
public final void testTransportLayer() {
|
||||
assertEquals(TransportLayer.ER_TPDU, 0x70);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.transport.TransportLayer.connectRequest(AccessPoint,
|
||||
* AccessPoint, AccessPoint, boolean, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testConnectRequest() {
|
||||
TransportLayer transport = new TransportLayer(false, this.session,
|
||||
OsiTests.callerTSAP);
|
||||
DataUnit data = DataUnitManager.getInstance();
|
||||
transport.connectRequest(OsiTests.calledNSAP, OsiTests.calledTSAP,
|
||||
OsiTests.callerTSAP, false, 0, data);
|
||||
DataUnitManager.freeInstance(data);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.transport.TransportLayer.connectResponse(int,
|
||||
* AccessPoint, boolean, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testConnectResponse() {
|
||||
TransportLayer transport = new TransportLayer(false, this.session,
|
||||
OsiTests.callerTSAP);
|
||||
transport.connectResponse(1, null, true, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.transport.TransportLayer.disconnectRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testDisconnectRequest() {
|
||||
TransportLayer transport = new TransportLayer(false, this.session,
|
||||
OsiTests.callerTSAP);
|
||||
DataUnit data = DataUnitManager.getInstance();
|
||||
transport.disconnectRequest(data);
|
||||
DataUnitManager.freeInstance(data);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.transport.TransportLayer.dataRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testDataRequest() {
|
||||
TransportLayer transport = new TransportLayer(false, this.session,
|
||||
OsiTests.callerTSAP);
|
||||
transport.dataRequest(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.transport.TransportLayer.expeditedDataRequest(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testExpeditedDataRequest() {
|
||||
TransportLayer transport = new TransportLayer(false, this.session,
|
||||
OsiTests.callerTSAP);
|
||||
transport.expeditedDataRequest(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.transport.TransportLayer.connectConfirm(int,
|
||||
* AccessPoint, boolean, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testConnectConfirm() {
|
||||
TransportLayer transport = new TransportLayer(false, this.session,
|
||||
OsiTests.callerTSAP);
|
||||
transport.connectConfirm(1, null, true, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.transport.TransportLayer.connectIndication(AccessPoint,
|
||||
* AccessPoint, boolean, int, DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testConnectIndication() {
|
||||
TransportLayer transport = new TransportLayer(false, this.session,
|
||||
OsiTests.callerTSAP);
|
||||
transport.connectIndication(null, null, true, 1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.transport.TransportLayer.disconnectIndication(int,
|
||||
* DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testDisconnectIndication() {
|
||||
TransportLayer transport = new TransportLayer(false, this.session,
|
||||
OsiTests.callerTSAP);
|
||||
transport.disconnectIndication(1, null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.transport.TransportLayer.dataIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testDataIndication() {
|
||||
TransportLayer transport = new TransportLayer(false, this.session,
|
||||
OsiTests.callerTSAP);
|
||||
transport.dataIndication(null);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for
|
||||
* 'com.peetz.network.osi.transport.TransportLayer.expeditedDataIndication(DataUnit)'
|
||||
*/
|
||||
@Test
|
||||
public final void testExpeditedDataIndication() {
|
||||
TransportLayer transport = new TransportLayer(false, this.session,
|
||||
OsiTests.callerTSAP);
|
||||
transport.expeditedDataIndication(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
package de.thpeetz.tools;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import de.thpeetz.network.osi.DataUnit;
|
||||
|
||||
public class ObjectPoolTest {
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.tools.ObjectPool.ObjectPool(Class)'
|
||||
*/
|
||||
@Test
|
||||
public final void testObjectPoolClass() {
|
||||
ObjectPool<DataUnit> objectPool = new ObjectPool<DataUnit>(DataUnit.class);
|
||||
assertNotNull(objectPool);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.tools.ObjectPool.ObjectPool(Class, int)'
|
||||
*/
|
||||
public final void testObjectPoolClassInt() {
|
||||
ObjectPool<DataUnit> objectPool = new ObjectPool<DataUnit>(DataUnit.class, 5);
|
||||
assertNotNull(objectPool);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.tools.ObjectPool.getInstance()'
|
||||
*/
|
||||
public final void testGetInstance() {
|
||||
ObjectPool<DataUnit> objectPool = new ObjectPool<DataUnit>(DataUnit.class, 1);
|
||||
DataUnit unit = objectPool.getInstance();
|
||||
assertNotNull(unit);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test method for 'com.peetz.tools.ObjectPool.freeInstance(Object)'
|
||||
*/
|
||||
public final void testFreeInstance() {
|
||||
ObjectPool<DataUnit> objectPool = new ObjectPool<DataUnit>(DataUnit.class);
|
||||
DataUnit unit = objectPool.getInstance();
|
||||
objectPool.freeInstance(unit);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user