diff --git a/.all-contributorsrc b/.all-contributorsrc deleted file mode 100644 index 8eecfd69ffd5c70d742ed9a9c35fb888c3c0e9e0..0000000000000000000000000000000000000000 --- a/.all-contributorsrc +++ /dev/null @@ -1,25 +0,0 @@ -{ - "files": [ - "README.md" - ], - "imageSize": 100, - "commit": false, - "contributors": [ - { - "login": "rhayes2", - "name": "Ryan Hayes", - "avatar_url": "https://avatars3.githubusercontent.com/u/43277456?v=4", - "profile": "https://github.com/rhayes2", - "contributions": [ - "maintenance", - "ideas", - "bug" - ] - } - ], - "contributorsPerLine": 7, - "projectName": "Image-Steganography-Library-Android", - "projectOwner": "aagarwal1012", - "repoType": "github", - "repoHost": "https://github.com" -} diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml deleted file mode 100644 index a5561776f974d7010927c19b0c3f250c70e0e3ac..0000000000000000000000000000000000000000 --- a/.github/FUNDING.yml +++ /dev/null @@ -1,9 +0,0 @@ -# These are supported funding model platforms - -# github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] -patreon: aagarwal1012 -# open_collective: # Replace with a single Open Collective username -# ko_fi: # Replace with a single Ko-fi username -# tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel -# community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry -custom: https://www.paypal.me/aagarwal1012 diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index 6136f5951cf8a75015a569444ac28f4e000ae6ce..0000000000000000000000000000000000000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -name: Bug report -about: Create a report to help us improve - ---- - -**Describe the bug** -A clear and concise description of what the bug is. - -**To Reproduce** -Steps to reproduce the behavior: -1. Go to '...' -2. Click on '....' -3. Scroll down to '....' -4. See error - -**Expected behavior** -A clear and concise description of what you expected to happen. - -**Screenshots** -If applicable, add screenshots to help explain your problem. - -**Smartphone (please complete the following information):** - - Device: [e.g. iPhone6] - - OS: [e.g. iOS8.1] - - Browser [e.g. stock browser, safari] - - Version [e.g. 22] - -**Additional context** -Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 066b2d920a28db73b4ba3a0b35e6905eeeef5772..0000000000000000000000000000000000000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -name: Feature request -about: Suggest an idea for this project - ---- - -**Is your feature request related to a problem? Please describe.** -A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] - -**Describe the solution you'd like** -A clear and concise description of what you want to happen. - -**Describe alternatives you've considered** -A clear and concise description of any alternative solutions or features you've considered. - -**Additional context** -Add any other context or screenshots about the feature request here. diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000000000000000000000000000000000000..2312fb6dfb7cd2c842e0ee386a4cf4806c05ae68 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,3 @@ +## 0.0.1-SNAPSHOT + +ohos 第一个版本,完整实现了原库的全部 api \ No newline at end of file diff --git a/ImageSteganographyLibrary/build.gradle b/ImageSteganographyLibrary/build.gradle deleted file mode 100644 index 882190df1845a9d6d6388fecaa484f3f5f35840d..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/build.gradle +++ /dev/null @@ -1,42 +0,0 @@ -apply plugin: 'com.android.library' - -android { - compileSdkVersion 26 - - - - defaultConfig { - minSdkVersion 19 - targetSdkVersion 26 - versionCode 1 - versionName "1.0" - - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" - - - - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - } - } - -} - -configurations.all { - resolutionStrategy { - force 'com.android.support:support-annotations:23.1.1' - } -} - -dependencies { - implementation fileTree(dir: 'libs', include: ['*.jar']) - - implementation 'com.android.support:appcompat-v7:26.1.0' - testImplementation 'junit:junit:4.12' - androidTestImplementation 'com.android.support.test:runner:1.0.2' - androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' -} diff --git a/ImageSteganographyLibrary/proguard-rules.pro b/ImageSteganographyLibrary/proguard-rules.pro deleted file mode 100644 index f1b424510da51fd82143bc74a0a801ae5a1e2fcd..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/proguard-rules.pro +++ /dev/null @@ -1,21 +0,0 @@ -# Add project specific ProGuard rules here. -# You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile diff --git a/ImageSteganographyLibrary/src/androidTest/java/com/ayush/imagesteganographylibrary/ExampleInstrumentedTest.java b/ImageSteganographyLibrary/src/androidTest/java/com/ayush/imagesteganographylibrary/ExampleInstrumentedTest.java deleted file mode 100644 index 9f859983ed0282f25baf9f42224b4e3922aba27f..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/src/androidTest/java/com/ayush/imagesteganographylibrary/ExampleInstrumentedTest.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.ayush.imagesteganographylibrary; - -import android.content.Context; -import android.support.test.InstrumentationRegistry; -import android.support.test.runner.AndroidJUnit4; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import static org.junit.Assert.*; - -/** - * Instrumented test, which will execute on an Android device. - * - * @see Testing documentation - */ -@RunWith(AndroidJUnit4.class) -public class ExampleInstrumentedTest { - @Test - public void useAppContext() throws Exception { - // Context of the app under test. - Context appContext = InstrumentationRegistry.getTargetContext(); - - assertEquals("com.ayush.steganographylibrary.test", appContext.getPackageName()); - } -} diff --git a/ImageSteganographyLibrary/src/main/AndroidManifest.xml b/ImageSteganographyLibrary/src/main/AndroidManifest.xml deleted file mode 100644 index 964638d6effe1c23a77be106090bef9583bb8843..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/src/main/AndroidManifest.xml +++ /dev/null @@ -1,2 +0,0 @@ - \ No newline at end of file diff --git a/ImageSteganographyLibrary/src/main/ic_launcher-web.png b/ImageSteganographyLibrary/src/main/ic_launcher-web.png deleted file mode 100644 index 4b4c6282282b18d6974d3091d8020d5d47c1ea55..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/ic_launcher-web.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Text/TextDecoding.java b/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Text/TextDecoding.java deleted file mode 100644 index 9dc0be470dce7f7a24c93d15a8f49b27b8a25a69..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Text/TextDecoding.java +++ /dev/null @@ -1,123 +0,0 @@ -package com.ayush.imagesteganographylibrary.Text; - -import android.app.Activity; -import android.app.ProgressDialog; -import android.graphics.Bitmap; -import android.os.AsyncTask; -import android.util.Log; - -import com.ayush.imagesteganographylibrary.Text.AsyncTaskCallback.TextDecodingCallback; -import com.ayush.imagesteganographylibrary.Utils.Utility; - -import java.util.List; - -/** - * In this class all those method in EncodeDecode class are used to decode secret message in image. - * All the tasks will run in background. - */ -public class TextDecoding extends AsyncTask { - - //Tag for Log - private final static String TAG = TextDecoding.class.getName(); - - private final ImageSteganography result; - //Callback interface for AsyncTask - private final TextDecodingCallback textDecodingCallback; - private ProgressDialog progressDialog; - - public TextDecoding(Activity activity, TextDecodingCallback textDecodingCallback) { - super(); - this.progressDialog = new ProgressDialog(activity); - this.textDecodingCallback = textDecodingCallback; - //making result object - this.result = new ImageSteganography(); - } - - //setting progress dialog if wanted - public void setProgressDialog(ProgressDialog progressDialog) { - this.progressDialog = progressDialog; - } - - //pre execution of method - @Override - protected void onPreExecute() { - super.onPreExecute(); - - //setting parameters of progress dialog - if (progressDialog != null) { - progressDialog.setMessage("Loading, Please Wait..."); - progressDialog.setTitle("Decoding Message"); - progressDialog.setIndeterminate(true); - progressDialog.setCancelable(false); - progressDialog.show(); - - } - } - - @Override - protected void onPostExecute(ImageSteganography imageSteganography) { - super.onPostExecute(imageSteganography); - - //dismiss progress dialog - if (progressDialog != null) - progressDialog.dismiss(); - - //sending result to callback - textDecodingCallback.onCompleteTextEncoding(result); - } - - @Override - protected ImageSteganography doInBackground(ImageSteganography... imageSteganographies) { - - //If it is not already decoded - if (imageSteganographies.length > 0) { - - ImageSteganography imageSteganography = imageSteganographies[0]; - - //getting bitmap image from file - Bitmap bitmap = imageSteganography.getImage(); - - //return null if bitmap is null -// if (bitmap == null) -// return null; - - //splitting images - List srcEncodedList = Utility.splitImage(bitmap); - - //decoding encrypted zipped message - String decoded_message = EncodeDecode.decodeMessage(srcEncodedList); - - Log.d(TAG, "Decoded_Message : " + decoded_message); - - //text decoded = true - if (!Utility.isStringEmpty(decoded_message)) { - result.setDecoded(true); - } - - //decrypting the encoded message - String decrypted_message = ImageSteganography.decryptMessage(decoded_message, imageSteganography.getSecret_key()); - Log.d(TAG, "Decrypted message : " + decrypted_message); - - //If decrypted_message is null it means that the secret key is wrong otherwise secret key is right. - if (!Utility.isStringEmpty(decrypted_message)) { - - //secret key provided is right - result.setSecretKeyWrong(false); - - // Set Results - - result.setMessage(decrypted_message); - - - //free memory - for (Bitmap bitm : srcEncodedList) - bitm.recycle(); - - //Java Garbage Collector - System.gc(); - } - } - - return result; - } -} diff --git a/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Text/TextEncoding.java b/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Text/TextEncoding.java deleted file mode 100644 index 2f32a7aae61ebe137031d983eba8a6de75472bf9..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Text/TextEncoding.java +++ /dev/null @@ -1,135 +0,0 @@ -package com.ayush.imagesteganographylibrary.Text; - -import android.app.Activity; -import android.app.ProgressDialog; -import android.graphics.Bitmap; -import android.os.AsyncTask; -import android.util.Log; - -import com.ayush.imagesteganographylibrary.Text.AsyncTaskCallback.TextEncodingCallback; -import com.ayush.imagesteganographylibrary.Utils.Utility; - -import java.util.List; - -/** - * In this class all those method in EncodeDecode class are used to encode secret message in image. - * All the tasks will run in background. - */ -public class TextEncoding extends AsyncTask { - - //Tag for Log - private static final String TAG = TextEncoding.class.getName(); - - private final ImageSteganography result; - //Callback interface for AsyncTask - private final TextEncodingCallback callbackInterface; - private int maximumProgress; - private final ProgressDialog progressDialog; - - public TextEncoding(Activity activity, TextEncodingCallback callbackInterface) { - super(); - this.progressDialog = new ProgressDialog(activity); - this.callbackInterface = callbackInterface; - //making result object - this.result = new ImageSteganography(); - } - - //pre execution of method - @Override - protected void onPreExecute() { - super.onPreExecute(); - - //setting parameters of progress dialog - if (progressDialog != null) { - progressDialog.setMessage("Loading, Please Wait..."); - progressDialog.setTitle("Encoding Message"); - progressDialog.setIndeterminate(false); - progressDialog.setCancelable(false); - progressDialog.show(); - } - } - - @Override - protected void onPostExecute(ImageSteganography textStegnography) { - super.onPostExecute(textStegnography); - - //dismiss progress dialog - if (progressDialog != null) { - progressDialog.dismiss(); - } - - //Sending result to callback interface - callbackInterface.onCompleteTextEncoding(result); - } - - @Override - protected void onProgressUpdate(Integer... values) { - super.onProgressUpdate(values); - - //Updating progress dialog - if (progressDialog != null) { - progressDialog.incrementProgressBy(values[0]); - } - } - - @Override - protected ImageSteganography doInBackground(ImageSteganography... imageSteganographies) { - - maximumProgress = 0; - - if (imageSteganographies.length > 0) { - - ImageSteganography textStegnography = imageSteganographies[0]; - - //getting image bitmap - Bitmap bitmap = textStegnography.getImage(); - - //getting height and width of original image - int originalHeight = bitmap.getHeight(); - int originalWidth = bitmap.getWidth(); - - //splitting bitmap - List src_list = Utility.splitImage(bitmap); - - //encoding encrypted compressed message into image - - List encoded_list = EncodeDecode.encodeMessage(src_list, textStegnography.getEncrypted_message(), new EncodeDecode.ProgressHandler() { - - //Progress Handler - @Override - public void setTotal(int tot) { - maximumProgress = tot; - progressDialog.setMax(maximumProgress); - Log.d(TAG, "Total Length : " + tot); - } - - @Override - public void increment(int inc) { - publishProgress(inc); - } - - @Override - public void finished() { - Log.d(TAG, "Message Encoding end...."); - progressDialog.setIndeterminate(true); - } - }); - - //free Memory - for (Bitmap bitm : src_list) - bitm.recycle(); - - //Java Garbage collector - System.gc(); - - //merging the split encoded image - Bitmap srcEncoded = Utility.mergeImage(encoded_list, originalHeight, originalWidth); - - //Setting encoded image to result - result.setEncoded_image(srcEncoded); - result.setEncoded(true); - } - - return result; - } -} diff --git a/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Utils/Crypto.java b/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Utils/Crypto.java deleted file mode 100644 index ff9fe0ccd0ed2214689f5f3ed5ce7d825481bea0..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Utils/Crypto.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.ayush.imagesteganographylibrary.Utils; - -import android.util.Log; - -import java.util.Arrays; - -import javax.crypto.Cipher; -import javax.crypto.spec.SecretKeySpec; - -public class Crypto { - - //Encryption Method - /* - @parameter : Message {String}, Secret key {String} - @return : Encrypted Message {String} - */ - public static String encryptMessage(String message, String secret_key) throws Exception { - - // Creating key and cipher - SecretKeySpec aesKey = new SecretKeySpec(secret_key.getBytes(), "AES"); - Cipher cipher; - - //AES cipher - cipher = Cipher.getInstance("AES"); - - // encrypt the text - cipher.init(Cipher.ENCRYPT_MODE, aesKey); - - byte[] encrypted; - - encrypted = cipher.doFinal(message.getBytes()); - - Log.d("crypto", "Encrypted in crypto (mine): " + Arrays.toString(encrypted) + "string: " + android.util.Base64.encodeToString(cipher.doFinal(message.getBytes()), 0)); - - Log.d("crypto", "Encrypted in crypto (theirs): " + Arrays.toString(cipher.doFinal(message.getBytes())) + "string : " + new String(encrypted)); - - return android.util.Base64.encodeToString(cipher.doFinal(message.getBytes()), 0); - } - - //Decryption Method - /* - @parameter : Encrypted Message {String}, Secret key {String} - @return : Message {String} - */ - public static String decryptMessage(String encrypted_message, String secret_key) throws Exception { - - Log.d("Decrypt", "message: + " + encrypted_message); - // Creating key and cipher - SecretKeySpec aesKey = new SecretKeySpec(secret_key.getBytes(), "AES"); - Cipher cipher; - - //AES cipher - cipher = Cipher.getInstance("AES"); - - // decrypting the text - cipher.init(Cipher.DECRYPT_MODE, aesKey); - String decrypted; - byte[] decoded; - decoded = android.util.Base64.decode(encrypted_message.getBytes(), 0); - decrypted = new String(cipher.doFinal(decoded)); - - //returning decrypted text - return decrypted; - } - -} diff --git a/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Utils/Zipping.java b/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Utils/Zipping.java deleted file mode 100644 index fde500e6382c7ee5aaedda91b69d20b723412b58..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/src/main/java/com/ayush/imagesteganographylibrary/Utils/Zipping.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.ayush.imagesteganographylibrary.Utils; - -import java.io.BufferedReader; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.InputStreamReader; -import java.nio.charset.StandardCharsets; -import java.util.zip.GZIPInputStream; -import java.util.zip.GZIPOutputStream; - -/* -This class has methods used to compress and decompress encrypted message. - */ - -class Zipping { - - final static String TAG = Zipping.class.getName(); - - /* - @parameter : Encrypted message {String} - @return : Compressed byte array - */ - - public static byte[] compress(String string) throws Exception { - - ByteArrayOutputStream os = new ByteArrayOutputStream(string.length()); - - GZIPOutputStream gos = new GZIPOutputStream(os); - - gos.write(string.getBytes()); - gos.close(); - - byte[] compressed = os.toByteArray(); - os.close(); - - return compressed; - } - - - /* - @parameter : byte array - @return : Uncompressed encrypted_message {String} - */ - public static String decompress(byte[] compressed) throws Exception { - - ByteArrayInputStream bis = new ByteArrayInputStream(compressed); - - GZIPInputStream gis = new GZIPInputStream(bis); - - BufferedReader br = new BufferedReader(new InputStreamReader(gis, StandardCharsets.ISO_8859_1)); - - StringBuilder sb = new StringBuilder(); - - String line; - - while ((line = br.readLine()) != null) { - sb.append(line); - } - - br.close(); - gis.close(); - bis.close(); - - return sb.toString(); - } - -} diff --git a/ImageSteganographyLibrary/src/main/res/drawable/ic_launcher_background.xml b/ImageSteganographyLibrary/src/main/res/drawable/ic_launcher_background.xml deleted file mode 100644 index 01f0af0add58c1ae4e6d5b296cce73d9f9c99df1..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/src/main/res/drawable/ic_launcher_background.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/ImageSteganographyLibrary/src/main/res/mipmap-anydpi-v26/ic_launcher.xml deleted file mode 100644 index c4a603d4cce78b2fbd8094bd0224d4778bc8c976..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/ImageSteganographyLibrary/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml deleted file mode 100644 index c4a603d4cce78b2fbd8094bd0224d4778bc8c976..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-hdpi/ic_launcher.png b/ImageSteganographyLibrary/src/main/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index 5a2f01fe1c1cc8dd09b4d89bf71d3c41c427092e..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-hdpi/ic_launcher.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-hdpi/ic_launcher_foreground.png b/ImageSteganographyLibrary/src/main/res/mipmap-hdpi/ic_launcher_foreground.png deleted file mode 100644 index aef4adf9031b13a2c9dffdc343abd09dd54321bd..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-hdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-hdpi/ic_launcher_round.png b/ImageSteganographyLibrary/src/main/res/mipmap-hdpi/ic_launcher_round.png deleted file mode 100644 index c6300b9efc5d8e313a81a07ead6e385ff9e5fa82..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-hdpi/ic_launcher_round.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-mdpi/ic_launcher.png b/ImageSteganographyLibrary/src/main/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index 278e7a994bcba49d229fcaaa46d3b6799c16e0ef..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-mdpi/ic_launcher.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-mdpi/ic_launcher_foreground.png b/ImageSteganographyLibrary/src/main/res/mipmap-mdpi/ic_launcher_foreground.png deleted file mode 100644 index bd9021fefd17713a2edc3d288232ecb081cc1ca3..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-mdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-mdpi/ic_launcher_round.png b/ImageSteganographyLibrary/src/main/res/mipmap-mdpi/ic_launcher_round.png deleted file mode 100644 index 09db570abf0a1a04c7b18ef0aff70f26e64af5cc..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-mdpi/ic_launcher_round.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-xhdpi/ic_launcher.png b/ImageSteganographyLibrary/src/main/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index d63dc5a60eb4ac2c33b110e864b29c8c2bfd7661..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-xhdpi/ic_launcher.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png b/ImageSteganographyLibrary/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png deleted file mode 100644 index a34023faacf5779b9555b6db1c50b10ea6e34ff4..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/ImageSteganographyLibrary/src/main/res/mipmap-xhdpi/ic_launcher_round.png deleted file mode 100644 index 2970017c5b901df82af959132418099821e964da..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-xhdpi/ic_launcher_round.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-xxhdpi/ic_launcher.png b/ImageSteganographyLibrary/src/main/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index 722fe6ae1d6ef4ec1fa989811cd02542399d8b37..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-xxhdpi/ic_launcher.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png b/ImageSteganographyLibrary/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png deleted file mode 100644 index 55a464b5cceb9d6760dc1175cd7ed8cfb7ad6109..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/ImageSteganographyLibrary/src/main/res/mipmap-xxhdpi/ic_launcher_round.png deleted file mode 100644 index 16479cb1431ec35e14674840692f8d417f4cb2c4..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-xxhdpi/ic_launcher_round.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/ImageSteganographyLibrary/src/main/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index dc465161e2818afb5a98415bb32c68bdd4f5937e..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-xxxhdpi/ic_launcher.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png b/ImageSteganographyLibrary/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png deleted file mode 100644 index cf5912859664a135992f90114cffc116f1c48340..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/ImageSteganographyLibrary/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png deleted file mode 100644 index 49140d401b1c8c587471fe2d422e757c75ccb9ab..0000000000000000000000000000000000000000 Binary files a/ImageSteganographyLibrary/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png and /dev/null differ diff --git a/ImageSteganographyLibrary/src/main/res/values/strings.xml b/ImageSteganographyLibrary/src/main/res/values/strings.xml deleted file mode 100644 index 29d1a964ea57b6de2735bc33fafe43f303be5bd0..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/src/main/res/values/strings.xml +++ /dev/null @@ -1,3 +0,0 @@ - - Steganography Library - diff --git a/ImageSteganographyLibrary/src/test/java/com/ayush/imagesteganographylibrary/ExampleUnitTest.java b/ImageSteganographyLibrary/src/test/java/com/ayush/imagesteganographylibrary/ExampleUnitTest.java deleted file mode 100644 index d6c8a44a54bf0c0aad1ed027364386dbb8fb5bc2..0000000000000000000000000000000000000000 --- a/ImageSteganographyLibrary/src/test/java/com/ayush/imagesteganographylibrary/ExampleUnitTest.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.ayush.imagesteganographylibrary; - -import org.junit.Test; - -import static org.junit.Assert.*; - -/** - * Example local unit test, which will execute on the development machine (host). - * - * @see Testing documentation - */ -public class ExampleUnitTest { - @Test - public void addition_isCorrect() throws Exception { - assertEquals(4, 2 + 2); - } -} \ No newline at end of file diff --git a/README.OPENSOURCE.md b/README.OPENSOURCE.md new file mode 100644 index 0000000000000000000000000000000000000000..60de59092511d98626be7f16cca370a9e06e1eec --- /dev/null +++ b/README.OPENSOURCE.md @@ -0,0 +1,10 @@ +[ + { + "Name":"Image_Steganography_Library_ohos", + "License":"MIT License", + "License File":"https://gitee.com/chinasoft3_ohos/Image-Steganography-Library-Android/blob/master/LICENSE", + "Version Number":"v1.1", + "Upstream URL":"https://github.com/aagarwal1012/Image-Steganography-Library-Android", + "Description":"使用LSB将加密信息编码嵌入到图片中,实现隐写", + } +] \ No newline at end of file diff --git a/README.md b/README.md index a2cf09e60879cabef5d2d1372a1831dd0d06b19f..d67c174d0b50bdbcfcaab73f836e0f04cebbaeac 100644 --- a/README.md +++ b/README.md @@ -1,253 +1,192 @@ -
-
- Platform - -API - - - License: MIT - - version - - Donate - - -
- -# Image Steganography -Steganography is the process of hiding a secret message within a larger one in such a way that someone cannot know the presence or contents of the hidden message. Although related, Steganography is not to be confused with Encryption, which is the process of making a message unintelligible—Steganography attempts to hide the existence of communication. -The main advantage of steganography algorithm is because of its simple security mechanism. Because the steganographic message is integrated invisibly and covered inside other harmless sources, it is very difficult to detect the message without knowing -the existence and the appropriate encoding scheme . - -# Proposed Algorithm -The algorithm is more dedicated towards the algorithm proposed by Rosziati Ibrahim and Teoh Suk Kuan in their [Research Paper](https://arxiv.org/ftp/arxiv/papers/1112/1112.2809.pdf) published on February 25, 2011. -## Encoding Algorithm -- Firstly, the secret message that is extracted is `compressed` as the contents in the compressed string will significantly hard to detect and read, furthermore it reduces the size of string. -- Secondly, the compressed string is `encrypted` with the secret key. -- Finally, `encoding` the encrypted message in the image. It uses `LSB steganographic embedding` to encode data into an image. Once the message is encoded the process stops. -### LSB(Least Significant Bit) Embedding -The LSB is the lowest significant bit in the byte value of the image pixel. -The LSB based image steganography embeds the secret in the least significant bits of pixel values of the cover image (CVR). -The concept of LSB Embedding is simple. It exploits the fact that the level of precision in many image formats is far greater than that perceivable by average human vision. Therefore, an altered image with slight variations in its colors will be indistinguishable from the original by a human being, just by looking at it. In conventional LSB technique, which requires eight bytes of pixels to store 1byte of secret data but in proposed LSB technique, just four bytes of pixels are sufficient to hold one message byte. Rest of the bits in the pixels remains the same. -Following shows the bit level interpretation of the algorithm : -
- -## Decoding Algorithm -- Firstly, `decode` the message from the encrypted image using LSB decoding. - -- Secondly, `decrypt` the compressed message from the decoded message using the secret key. - -- Finally, `decompress` the message to get the original compressed message. - -Consider the following encoding, it is totally undetectable by human eyes. -
- -# Usage -Add it in your root `build.gradle` at the end of repositories: -```groovy -allprojects { - repositories { - ... - maven { url 'https://jitpack.io' } - } -} +# Image-Steganography-Library + +### 项目介绍 + +- *项目名称:Image-Steganography-Library-ohos* + +- 所属系列:openharmony的第三方组件适配移植 + +- 功能:使用LSB将加密信息编码嵌入到图片中,实现隐写 + +- 基线版本:Image-Steganography-Library v1.1 + +- 项目移植状态:主功能完成 + +- 调用差异:无 + +- 开发版本:sdk5,DevEco Studio2.1 beta3 + + +### 效果演示 + + + +### 安装教程 +1.在项目根目录下的build.gradle文件中, + ``` + allprojects { + repositories { + maven { + url 'https://s01.oss.sonatype.org/content/repositories/snapshots/' + } + } + } +``` +2.在entry模块的build.gradle文件中, + ``` + dependencies { + implementation 'com.gitee.chinasoft_ohos:ImageSteganography:0.0.1-SNAPSHOT' + ...... + } +``` + +在sdk5,DevEco Studio2.1 beta3下项目可直接运行 +如无法运行,删除项目.gradle,.idea,build,gradle,build.gradle文件, +并依据自己的版本创建新项目,将新项目的对应文件复制到根目录下 + +### 使用说明 + +How to encode message into an image: + +- Your Ability class should implements TextEncodingCallback interface and also contains its override methods. +```JAVA +public class Encode extends Ability implements TextEncodingCallback + +``` + +- Firstly, instantiate the ImageSteganography object and pass the values Message , Secret Key and Image Bitmap to the constructor. + +```JAVA +ImageSteganography imageSteganography = new ImageSteganography(message, + secret_key, + original_image); +``` + +- Secondly, instantiate the TextEncoding object and pass the values Activity and TextEncodingCallback object to the constructor. + +```JAVA + + TextEncoding textEncoding = new TextEncoding(Encode.this, Encode.this); + +``` + +- Finally, execute our encoding task. + +```JAVA + + textEncoding.inBack(imageSteganography); + +``` + +- OnStartTextEncoding() : In this method you can whatever by the start of text encoding process. + +```JAVA + + @Override + public void onStartTextEncoding() { + //Whatever you want to do at the start of text encoding + } + ``` -Now add the following dependency in your app's `build.gradle` -```groovy -dependencies { - implementation 'com.github.aagarwal1012:Image-Steganography-Library-Android:v1.0' -} + +- onCompleteTextEncoding() : After the completion of text encoding, this method is called and gives result. + +```JAVA + + @Override + public void onCompleteTextEncoding(ImageSteganography result) { + + //After the completion of text encoding. + + //result object is instantiated + this.result = result; + + if (result != null && result.isEncoded()){ + + //encrypted image bitmap is extracted from result object + encoded_image = result.getEncrypted_image(); + + //set text and image to the UI component. + textView.setText("Encoded"); + imageView.setImageBitmap(encoded_image); + } + ``` -## How to encode message into an image ? -**Note :** Your Activity class should implements `TextEncodingCallback` interface and also contains its `override` methods. -```java -public class MainActivity extends AppCompatActivity implements TextEncodingCallback + +How to decode message from an image ? + +- Your Ability class should implements TextDecodingCallback interface and also contains its override methods. + +```JAVA +public class Decode extends Ability implements TextDecodingCallback ``` -- Firstly, instantiate the `ImageSteganography` object and pass the values `Message `, `Secret Key` and `Image Bitmap` to the constructor. - - ```java - ImageSteganography imageSteganography = new ImageSteganography(message, - secret_key, - original_image); - ``` - -- Secondly, instantiate the `TextEncoding` object and pass the values `Activity` and `TextEncodingCallback` object to the constructor. - - ```java - TextEncoding textEncoding = new TextEncoding(MainActivity.this, - MainActivity.this); - ``` - -- Finally, execute our `encoding` task. - - ```java - textEncoding.execute(imageSteganography); - ``` -**Note** : By default a `ProgressDialog` will appear in the process of text encoding. - -#### Override Methods - -- `OnStartTextEncoding()` : In this method you can whatever by the start of text encoding process. - - ```java - @Override - public void onStartTextEncoding() { - //Whatever you want to do at the start of text encoding - } - ``` - -- `onCompleteTextEncoding()` : After the completion of text encoding, this method is called and gives result. - - ```java - @Override - public void onCompleteTextEncoding(ImageSteganography result) { - - //After the completion of text encoding. - - //result object is instantiated - this.result = result; - - if (result != null && result.isEncoded()){ - - //encrypted image bitmap is extracted from result object - encoded_image = result.getEncrypted_image(); - - //set text and image to the UI component. - textView.setText("Encoded"); - imageView.setImageBitmap(encoded_image); - } - ``` -## How to decode message from an image ? -**Note :** Your Activity class should implements `TextDecodingCallback` interface and also contains its `override` methods. - -```java -public class MainActivity extends AppCompatActivity implements TextDecodingCallback + +- Firstly, instantiate the ImageSteganography object and pass the values Secret Key and Image PixelMap to the constructor. + +```JAVA +ImageSteganography imageSteganography = new ImageSteganography(secret_key, + original_image); ``` -- Firstly, instantiate the `ImageSteganography` object and pass the values `Secret Key` and `Image Bitmap` to the constructor. - - ```java - ImageSteganography imageSteganography = new ImageSteganography(secret_key, - original_image); - ``` - -- Secondly, instantiate the `TextDecoding` object and pass the values `Activity` and `TextDecodingCallback` object to the constructor. - - ```java - TextDecoding textDecoding = new TextDecoding(MainActivity.this, - MainActivity.this); - ``` - -- Finally, execute our `decoding` task. - - ```java - textDecoding.execute(imageSteganography); - ``` - **Note** : By default a `ProgressDialog` will appear in the process of text decoding. - -#### Override Methods - -- `OnStartTextDecoding()` : In this method you can whatever by the start of text decoding process. - - ```java - @Override - public void onStartTextDecoding() { - //Whatever you want to do at the start of text encoding - } - ``` - -- `onCompleteTextDecoding()` : After the completion of text decoding, this method is called and gives result. - - ```java - @Override - public void onCompleteTextEncoding(ImageSteganography result) { - - //After the completion of text encoding. - - //result object is instantiated - this.result = result; - - if (result != null){ - - /* If result.isDecoded() is false, it means no Message was found in the image. */ - if (!result.isDecoded()) - textView.setText("No message found"); - - else{ - /* If result.isSecretKeyWrong() is true, it means that secret key provided is wrong. */ - if (!result.isSecretKeyWrong()){ - //set the message to the UI component. - textView.setText("Decoded"); - message.setText("" + result.getMessage()); - } - else { - textView.setText("Wrong secret key"); - } - } - } - else { - //If result is null it means that bitmap is null - textView.setText("Select Image First"); - } - } - ``` -# Documentation - -#### ImageSteganography Class - -| Java attribute | Java set methods | Description | Default Value | -| :---------------- | :------------------------------ | :----------------------------------------------------------- | :-----------: | -| Message | setMessage(...) , getMessage() | Set the value of message, Get the value of message. | Null | -| Secret_Key | setSecret_key(...) | Set the value of secret key. | Null | -| Image | setImage(...) | Set the value of image. | Null | -| Encoded_Image | getEncoded_image() | Get the value of encoded image after text encoding. | Null | -| Encoded | isEncoded() | Check that the encoding is over or not | false | -| Decoded | isDecoded() | Check that the decoding is over or not. | false | -| SecretKeyWrong | isSecretKeyWrong() | Check that the secret key provided was right or wrong but after decoding was done. | true | - -#### Class Domain Diagram - -![](https://raw.githubusercontent.com/aagarwal1012/Image-Steganography-Library-Android/master/UML/UMLDOC.PNG) - -### Example App - -There are two options `Encode` and `Decode`. In the encode section you can hide a secret message into an image without making any noticeable changes. In the decode section you can extract the message from the encoded image by inserting the correct key. - -**Note** - After pressing the `Save` button, both the original and encoded images are saved at the location ```Android/data/com.ayush.steganography/files/Documents// ``` - -| Encode | Decode | -| :----------------------------------------------------------: | :----------------------------------------------------------: | -| | | -# Want to contribute ! - -This is the well `documented` library. I have documented each and every method that I have used, so have a good read to the code and suggest some changes and new feature to be added in the library. -Feel free to open an issue. - -# Donate -> If you found this project helpful or you learned something from the source code and want to thank me, consider buying me a cup of :coffee: -> -> - [PayPal](https://www.paypal.me/aagarwal1012/) - -## Contributors ✨ - -Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)): - - - - - - - -
Ryan Hayes
Ryan Hayes

🚧 🤔 🐛
- - - -This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome! - -# License -**Image Steganography** is licensed under `MIT license`. + +- Secondly, instantiate the TextDecoding object and pass the values Activity and TextDecodingCallback object to the constructor. + +```JAVA + TextDecoding textDecoding = new TextDecoding(Decode.this, Decode.this); +``` + +- Finally, execute our decoding task. + +```JAVA +textDecoding.doInBackground(imageSteganography); +``` + +- OnStartTextDecoding() : In this method you can whatever by the start of text decoding process. + +```JAVA +@Override + public void onStartTextDecoding() { + //Whatever you want to do at the start of text encoding + } +``` + +- onCompleteTextDecoding() : After the completion of text decoding, this method is called and gives result. + +```JAVA +@Override + public void onCompleteTextEncoding(ImageSteganography result) { + //By the end of textDecoding + if (result != null) { + if (!result.isDecoded()) + whether_encoded.setText("No message found"); + else { + if (!result.isSecretKeyWrong()) { + message.setText("" + result.getMessage()); + } else { + textView.setText("Wrong secret key"); + } + } + } else { + whether_encoded.setText("Select Image First"); + } + } +``` + +### 测试信息 + +CodeCheck代码测试无异常 + +CloudTest代码测试无异常 + +火绒安全病毒安全检测通过 + +当前版本demo功能与原组件基本无差异 + +### 版本迭代 + +- 0.0.1-SNAPSHOT + +### 版权和许可信息 ``` MIT License diff --git a/UML/Stegmodel.mdj b/UML/Stegmodel.mdj deleted file mode 100644 index 687c23fdad8cfef585ba27b603fc56d4b90208e9..0000000000000000000000000000000000000000 --- a/UML/Stegmodel.mdj +++ /dev/null @@ -1,9800 +0,0 @@ -{ - "_type": "Project", - "_id": "AAAAAAFF+h6SjaM2Hec=", - "name": "Untitled", - "ownedElements": [ - { - "_type": "UMLModel", - "_id": "AAAAAAFF+qBWK6M3Z8Y=", - "_parent": { - "$ref": "AAAAAAFF+h6SjaM2Hec=" - }, - "name": "Model", - "ownedElements": [ - { - "_type": "UMLClassDiagram", - "_id": "AAAAAAFF+qBtyKM79qY=", - "_parent": { - "$ref": "AAAAAAFF+qBWK6M3Z8Y=" - }, - "name": "Main", - "defaultDiagram": true - } - ] - }, - { - "_type": "UMLModel", - "_id": "AAAAAAFnjpd2FQ5D7EM=", - "_parent": { - "$ref": "AAAAAAFF+h6SjaM2Hec=" - }, - "name": "Model1", - "ownedElements": [ - { - "_type": "UMLClassDiagram", - "_id": "AAAAAAFnjpd2Fg5EewU=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "ClassDiagram1", - "ownedViews": [ - { - "_type": "RectangleView", - "_id": "AAAAAAFnjwcIvUFaUh4=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "lineColor": "#82abff", - "font": "Arial;28;0", - "left": 160, - "top": 184, - "width": 736, - "height": 880 - }, - { - "_type": "RectangleView", - "_id": "AAAAAAFnjr6kLxDEWQE=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "font": "Arial;13;0", - "left": 2072, - "top": 200, - "width": 296, - "height": 329 - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjpeueQ5KROA=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjpeueg5LXIQ=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5KROA=" - }, - "model": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjpeueg5MsF0=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5LXIQ=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1200, - "top": 320, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjpeueg5NXaY=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5LXIQ=" - }, - "font": "Arial;13;1", - "left": 1045, - "top": 463, - "width": 282.87060546875, - "height": 13, - "text": "ImageSteganography" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjpeueg5Oieg=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5LXIQ=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1200, - "top": 320, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjpeueg5P5kc=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5LXIQ=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1200, - "top": 320, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 1040, - "top": 456, - "width": 292.87060546875, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjpeueg5MsF0=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjpeueg5NXaY=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjpeueg5Oieg=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjpeueg5P5kc=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjpeueg5QpPA=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5KROA=" - }, - "model": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "subViews": [ - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjpfiYg50AGA=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5QpPA=" - }, - "model": { - "$ref": "AAAAAAFnjpfiOg5xtDk=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 486, - "width": 282.87060546875, - "height": 13, - "text": "+Message: String", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjpjx1g6ENCg=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5QpPA=" - }, - "model": { - "$ref": "AAAAAAFnjpjxqA6Bza4=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 501, - "width": 282.87060546875, - "height": 13, - "text": "+Secret_Key: String", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjpj2UQ6Lujw=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5QpPA=" - }, - "model": { - "$ref": "AAAAAAFnjpj2Iw6IYyA=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 516, - "width": 282.87060546875, - "height": 13, - "text": "+Encrypted_Message: String", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjpkURw6Slw4=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5QpPA=" - }, - "model": { - "$ref": "AAAAAAFnjpkUIA6PuiY=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 531, - "width": 282.87060546875, - "height": 13, - "text": "+Image: Bitmap", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjpkbyQ6ZAU4=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5QpPA=" - }, - "model": { - "$ref": "AAAAAAFnjpkbmw6WD7Y=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 546, - "width": 282.87060546875, - "height": 13, - "text": "+Encoded_Image: Bitmap", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjpkfZA6glfQ=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5QpPA=" - }, - "model": { - "$ref": "AAAAAAFnjpkfNQ6dzA0=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 561, - "width": 282.87060546875, - "height": 13, - "text": "+Encrypted_Zip: Byte [ ]", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjpkjNA6nXnU=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5QpPA=" - }, - "model": { - "$ref": "AAAAAAFnjpkjEA6kgi8=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 576, - "width": 282.87060546875, - "height": 13, - "text": "+Decoded: Boolean", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjpkmDw6uVsQ=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5QpPA=" - }, - "model": { - "$ref": "AAAAAAFnjpkl5w6rr/M=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 591, - "width": 282.87060546875, - "height": 13, - "text": "+Encoded: Boolean", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjpkpAA613aY=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5QpPA=" - }, - "model": { - "$ref": "AAAAAAFnjpko3A6yrEM=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 606, - "width": 282.87060546875, - "height": 13, - "text": "+SecretKeyWrong: Boolean", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 1040, - "top": 481, - "width": 292.87060546875, - "height": 143 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjpeueg5R7A4=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5KROA=" - }, - "model": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "subViews": [ - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjstUxRWEruo=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5R7A4=" - }, - "model": { - "$ref": "AAAAAAFnjstUmxWB8yM=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 629, - "width": 282.87060546875, - "height": 13, - "underline": true, - "text": "+ImgSteg(message, secret_key, image)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjszkeRZ/aWs=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5R7A4=" - }, - "model": { - "$ref": "AAAAAAFnjszkVBZ2JHA=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 644, - "width": 282.87060546875, - "height": 13, - "underline": true, - "text": "+ImgSteg(secret_key, image)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjpgMoQ56GMI=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5R7A4=" - }, - "model": { - "$ref": "AAAAAAFnjpgMeg53qk8=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 659, - "width": 282.87060546875, - "height": 13, - "underline": true, - "text": "+EncryptMessage()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjpvaSQ7Pk48=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5R7A4=" - }, - "model": { - "$ref": "AAAAAAFnjpvaGQ7Mm1E=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 674, - "width": 282.87060546875, - "height": 13, - "underline": true, - "text": "+DecryptMessage()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjpvgOg7WZ9w=", - "_parent": { - "$ref": "AAAAAAFnjpeueg5R7A4=" - }, - "model": { - "$ref": "AAAAAAFnjpvgEw7TAVo=" - }, - "font": "Arial;13;0", - "left": 1045, - "top": 689, - "width": 282.87060546875, - "height": 13, - "text": "+convertKeyTo128bit()", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 1040, - "top": 624, - "width": 292.87060546875, - "height": 83 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjpeueg5Sf/4=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5KROA=" - }, - "model": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 600, - "top": 160, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjpeueg5Tz7A=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5KROA=" - }, - "model": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 600, - "top": 160, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 1040, - "top": 456, - "width": 292.87060546875, - "height": 251, - "nameCompartment": { - "$ref": "AAAAAAFnjpeueg5LXIQ=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjpeueg5QpPA=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjpeueg5R7A4=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjpeueg5Sf/4=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjpeueg5Tz7A=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjp66Gg7qarI=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjp66Gg7rbNE=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7qarI=" - }, - "model": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjp66Gg7sogU=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7rbNE=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2272, - "top": -544, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjp66Gg7tOXQ=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7rbNE=" - }, - "font": "Arial;13;1", - "left": 1493, - "top": 55, - "width": 577.90966796875, - "height": 13, - "text": "Crypto" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjp66Gg7uCTo=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7rbNE=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2272, - "top": -544, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjp66Gg7vfHs=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7rbNE=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2272, - "top": -544, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 1488, - "top": 48, - "width": 587.90966796875, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjp66Gg7sogU=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjp66Gg7tOXQ=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjp66Gg7uCTo=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjp66Gg7vfHs=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjp66Gg7w9mA=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7qarI=" - }, - "model": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "font": "Arial;13;0", - "left": 1488, - "top": 73, - "width": 587.90966796875, - "height": 10 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjp66Gg7xkoE=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7qarI=" - }, - "model": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "subViews": [ - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjqAIFA8XlhU=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7xkoE=" - }, - "model": { - "$ref": "AAAAAAFnjqAH7Q8U3pg=" - }, - "font": "Arial;13;0", - "left": 1493, - "top": 88, - "width": 577.90966796875, - "height": 13, - "text": "+EncryptMessage(Message: String, Secret_Key: String)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjqJ6+A8/ON8=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7xkoE=" - }, - "model": { - "$ref": "AAAAAAFnjqJ6yg84Zfc=" - }, - "font": "Arial;13;0", - "left": 1493, - "top": 103, - "width": 577.90966796875, - "height": 13, - "text": "+DecryptMessage(EncryptMessage: String, Secret_Key: String)", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 1488, - "top": 83, - "width": 587.90966796875, - "height": 38 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjp66Gg7y7U0=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7qarI=" - }, - "model": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1136, - "top": -272, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjp66Gg7z1gI=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7qarI=" - }, - "model": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1136, - "top": -272, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 1488, - "top": 48, - "width": 587.90966796875, - "height": 73, - "nameCompartment": { - "$ref": "AAAAAAFnjp66Gg7rbNE=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjp66Gg7w9mA=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjp66Gg7xkoE=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjp66Gg7y7U0=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjp66Gg7z1gI=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjqSV+g9IUVE=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjqSV+Q9GZOg=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjqSV+g9JeUk=", - "_parent": { - "$ref": "AAAAAAFnjqSV+g9IUVE=" - }, - "model": { - "$ref": "AAAAAAFnjqSV+Q9GZOg=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjqSV+g9K+lU=", - "_parent": { - "$ref": "AAAAAAFnjqSV+g9JeUk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 3280, - "top": -160, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjqSV+g9L0Co=", - "_parent": { - "$ref": "AAAAAAFnjqSV+g9JeUk=" - }, - "font": "Arial;13;1", - "left": 2165, - "top": 263, - "width": 119.2216796875, - "height": 13, - "text": "SecretKeySpec LIB" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjqSV+g9MR+c=", - "_parent": { - "$ref": "AAAAAAFnjqSV+g9JeUk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 3280, - "top": -160, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjqSV+g9N9jo=", - "_parent": { - "$ref": "AAAAAAFnjqSV+g9JeUk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 3280, - "top": -160, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 2160, - "top": 256, - "width": 129.2216796875, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjqSV+g9K+lU=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjqSV+g9L0Co=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjqSV+g9MR+c=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjqSV+g9N9jo=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjqSV+g9Ofl4=", - "_parent": { - "$ref": "AAAAAAFnjqSV+g9IUVE=" - }, - "model": { - "$ref": "AAAAAAFnjqSV+Q9GZOg=" - }, - "font": "Arial;13;0", - "left": 2160, - "top": 281, - "width": 129.2216796875, - "height": 10 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjqSV+g9P6Pc=", - "_parent": { - "$ref": "AAAAAAFnjqSV+g9IUVE=" - }, - "model": { - "$ref": "AAAAAAFnjqSV+Q9GZOg=" - }, - "font": "Arial;13;0", - "left": 2160, - "top": 291, - "width": 129.2216796875, - "height": 10 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjqSV+g9Q8nc=", - "_parent": { - "$ref": "AAAAAAFnjqSV+g9IUVE=" - }, - "model": { - "$ref": "AAAAAAFnjqSV+Q9GZOg=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1640, - "top": -80, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjqSV+g9RurA=", - "_parent": { - "$ref": "AAAAAAFnjqSV+g9IUVE=" - }, - "model": { - "$ref": "AAAAAAFnjqSV+Q9GZOg=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1640, - "top": -80, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 2160, - "top": 256, - "width": 129.2216796875, - "height": 45, - "nameCompartment": { - "$ref": "AAAAAAFnjqSV+g9JeUk=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjqSV+g9Ofl4=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjqSV+g9P6Pc=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjqSV+g9Q8nc=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjqSV+g9RurA=" - } - }, - { - "_type": "UMLDependencyView", - "_id": "AAAAAAFnjqjKUQ/iFBY=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjqjKUQ/gIMw=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjqjKUQ/j4vE=", - "_parent": { - "$ref": "AAAAAAFnjqjKUQ/iFBY=" - }, - "model": { - "$ref": "AAAAAAFnjqjKUQ/gIMw=" - }, - "font": "Arial;13;0", - "left": 1978, - "top": 150, - "width": 87.79443359375, - "height": 13, - "alpha": -4.41389025836879, - "distance": 31.240998703626616, - "hostEdge": { - "$ref": "AAAAAAFnjqjKUQ/iFBY=" - }, - "edgePosition": 1, - "text": "+MakeAESKey" - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjqjKUQ/kBkQ=", - "_parent": { - "$ref": "AAAAAAFnjqjKUQ/iFBY=" - }, - "model": { - "$ref": "AAAAAAFnjqjKUQ/gIMw=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 2030, - "top": 154, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjqjKUQ/iFBY=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjqjKUQ/lIxE=", - "_parent": { - "$ref": "AAAAAAFnjqjKUQ/iFBY=" - }, - "model": { - "$ref": "AAAAAAFnjqjKUQ/gIMw=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1985, - "top": 195, - "width": 53.69482421875, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjqjKUQ/iFBY=" - }, - "edgePosition": 1 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjqSV+g9IUVE=" - }, - "tail": { - "$ref": "AAAAAAFnjp66Gg7qarI=" - }, - "lineStyle": 1, - "points": "1865:121;2171:255", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjqjKUQ/j4vE=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjqjKUQ/kBkQ=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjqjKUQ/lIxE=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjqu1tRAFND0=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjqu1tBADvMA=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjqu1tRAG0yA=", - "_parent": { - "$ref": "AAAAAAFnjqu1tRAFND0=" - }, - "model": { - "$ref": "AAAAAAFnjqu1tBADvMA=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjqu1tRAHUFU=", - "_parent": { - "$ref": "AAAAAAFnjqu1tRAG0yA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2752, - "top": 384, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjqu1tRAI52M=", - "_parent": { - "$ref": "AAAAAAFnjqu1tRAG0yA=" - }, - "font": "Arial;13;1", - "left": 2165, - "top": 327, - "width": 111, - "height": 13, - "text": "Cipher LIB" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjqu1tRAJ/4o=", - "_parent": { - "$ref": "AAAAAAFnjqu1tRAG0yA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2752, - "top": 384, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjqu1tRAKutM=", - "_parent": { - "$ref": "AAAAAAFnjqu1tRAG0yA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2752, - "top": 384, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 2160, - "top": 320, - "width": 121, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjqu1tRAHUFU=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjqu1tRAI52M=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjqu1tRAJ/4o=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjqu1tRAKutM=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjqu1tRALlGA=", - "_parent": { - "$ref": "AAAAAAFnjqu1tRAFND0=" - }, - "model": { - "$ref": "AAAAAAFnjqu1tBADvMA=" - }, - "font": "Arial;13;0", - "left": 2160, - "top": 345, - "width": 121, - "height": 10 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjqu1tRAMQDY=", - "_parent": { - "$ref": "AAAAAAFnjqu1tRAFND0=" - }, - "model": { - "$ref": "AAAAAAFnjqu1tBADvMA=" - }, - "font": "Arial;13;0", - "left": 2160, - "top": 355, - "width": 121, - "height": 10 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjqu1tRANiZk=", - "_parent": { - "$ref": "AAAAAAFnjqu1tRAFND0=" - }, - "model": { - "$ref": "AAAAAAFnjqu1tBADvMA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1376, - "top": 192, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjqu1tRAOnOE=", - "_parent": { - "$ref": "AAAAAAFnjqu1tRAFND0=" - }, - "model": { - "$ref": "AAAAAAFnjqu1tBADvMA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1376, - "top": 192, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 2160, - "top": 320, - "width": 121, - "height": 45, - "nameCompartment": { - "$ref": "AAAAAAFnjqu1tRAG0yA=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjqu1tRALlGA=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjqu1tRAMQDY=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjqu1tRANiZk=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjqu1tRAOnOE=" - } - }, - { - "_type": "UMLDependencyView", - "_id": "AAAAAAFnjqxjphA4vbA=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjqxjphA2cic=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjqxjphA5t/0=", - "_parent": { - "$ref": "AAAAAAFnjqxjphA4vbA=" - }, - "model": { - "$ref": "AAAAAAFnjqxjphA2cic=" - }, - "font": "Arial;13;0", - "left": 1987, - "top": 201, - "width": 65.39990234375, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjqxjphA4vbA=" - }, - "edgePosition": 1, - "text": "+CipherSet" - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjqxjphA6yHQ=", - "_parent": { - "$ref": "AAAAAAFnjqxjphA4vbA=" - }, - "model": { - "$ref": "AAAAAAFnjqxjphA2cic=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 2027, - "top": 188, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjqxjphA4vbA=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjqxjphA7fWQ=", - "_parent": { - "$ref": "AAAAAAFnjqxjphA4vbA=" - }, - "model": { - "$ref": "AAAAAAFnjqxjphA2cic=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2004, - "top": 226, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjqxjphA4vbA=" - }, - "edgePosition": 1 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjqu1tRAFND0=" - }, - "tail": { - "$ref": "AAAAAAFnjp66Gg7qarI=" - }, - "lineStyle": 1, - "points": "1844:121;2181:319", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjqxjphA5t/0=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjqxjphA6yHQ=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjqxjphA7fWQ=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjrFoGRBjX1I=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjrFoGRBkUv8=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBjX1I=" - }, - "model": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjrFoGRBlryE=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBkUv8=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 112, - "top": -496, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjrFoGRBmGCc=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBkUv8=" - }, - "font": "Arial;13;1", - "left": 517, - "top": 335, - "width": 301.11376953125, - "height": 13, - "text": "UI _ ENCODE" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjrFoGRBnR9g=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBkUv8=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 112, - "top": -496, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjrFoGRBohSc=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBkUv8=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 112, - "top": -496, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 512, - "top": 328, - "width": 311.11376953125, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjrFoGRBlryE=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjrFoGRBmGCc=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjrFoGRBnR9g=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjrFoGRBohSc=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjrFoGRBpD0E=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBjX1I=" - }, - "model": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "subViews": [ - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjrx6UBCSL5Y=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBpD0E=" - }, - "model": { - "$ref": "AAAAAAFnjrx6JhCPbs0=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 358, - "width": 301.11376953125, - "height": 13, - "underline": true, - "text": "-SELECT_PICTURE: String = 100", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjryr3RCZPHs=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBpD0E=" - }, - "model": { - "$ref": "AAAAAAFnjryrrhCW5Ew=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 373, - "width": 301.11376953125, - "height": 13, - "underline": true, - "text": "-TAG: String = Encode Class", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjryy7BCg+5g=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBpD0E=" - }, - "model": { - "$ref": "AAAAAAFnjryywxCdAfg=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 388, - "width": 301.11376953125, - "height": 13, - "text": "-Filepath: Uri", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjry2EBCnWS8=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBpD0E=" - }, - "model": { - "$ref": "AAAAAAFnjry14RCkcps=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 403, - "width": 301.11376953125, - "height": 13, - "text": "-original_image: Bitmap", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjry7GBCu99g=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBpD0E=" - }, - "model": { - "$ref": "AAAAAAFnjry65hCrjeU=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 418, - "width": 301.11376953125, - "height": 13, - "text": "-imageSteganography, result: ImageSteganography", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjrzBaRC1Db8=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBpD0E=" - }, - "model": { - "$ref": "AAAAAAFnjrzBPBCyXM0=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 433, - "width": 301.11376953125, - "height": 13, - "text": "+save: ProgressDialog", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 512, - "top": 353, - "width": 311.11376953125, - "height": 98 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjrFoGRBqF2k=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBjX1I=" - }, - "model": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "subViews": [ - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjshfkBJi2FU=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBqF2k=" - }, - "model": { - "$ref": "AAAAAAFnjshfYhJf+3Y=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 456, - "width": 301.11376953125, - "height": 13, - "text": "+checkAndRequestPermissions()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjsldYhLIMS8=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBqF2k=" - }, - "model": { - "$ref": "AAAAAAFnjsldOxLFBQU=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 471, - "width": 301.11376953125, - "height": 13, - "text": "+OnPressENCODE()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjsljNxLn1ig=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBqF2k=" - }, - "model": { - "$ref": "AAAAAAFnjsljDRLkMJU=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 486, - "width": 301.11376953125, - "height": 13, - "text": "+OnPressDECODE()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjvPNzYIhwI0=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBqF2k=" - }, - "model": { - "$ref": "AAAAAAFnjvPNpIIeYW0=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 501, - "width": 301.11376953125, - "height": 13, - "text": "+OnPressSAVEIMAGE()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjvS12oR1toM=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBqF2k=" - }, - "model": { - "$ref": "AAAAAAFnjvS1sYRybRs=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 516, - "width": 301.11376953125, - "height": 13, - "text": "+saveToInternalStorage(bitmapImage, name)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjvXXYIdO35k=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBqF2k=" - }, - "model": { - "$ref": "AAAAAAFnjvXXN4dL7gk=" - }, - "font": "Arial;13;0", - "left": 517, - "top": 531, - "width": 301.11376953125, - "height": 13, - "text": "+onActivityResult()", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 512, - "top": 451, - "width": 311.11376953125, - "height": 98 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjrFoGRBr7yc=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBjX1I=" - }, - "model": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 56, - "top": -248, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjrFoGRBsw/U=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBjX1I=" - }, - "model": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 56, - "top": -248, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 512, - "top": 328, - "width": 311.11376953125, - "height": 221, - "nameCompartment": { - "$ref": "AAAAAAFnjrFoGRBkUv8=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjrFoGRBpD0E=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjrFoGRBqF2k=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjrFoGRBr7yc=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjrFoGRBsw/U=" - } - }, - { - "_type": "UMLTextView", - "_id": "AAAAAAFnjr8JIRDPb2s=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "font": "Arial;13;0", - "width": 60, - "height": 15 - }, - { - "_type": "UMLTextView", - "_id": "AAAAAAFnjr8T0xDSzIM=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "font": "Arial;20;0", - "left": 2192, - "top": 208, - "width": 83.369140625, - "height": 32, - "text": "External" - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnjsLb2BD4t1Y=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD0dwk=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjsLb2BD5Nxc=", - "_parent": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD0dwk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 935, - "top": 490, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjsLb2BD6fkc=", - "_parent": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD0dwk=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 939, - "top": 476, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjsLb2BD7ess=", - "_parent": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD0dwk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 926, - "top": 519, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjsLb2BD8v4o=", - "_parent": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD1cp4=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 852, - "top": 467, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjsLb2BD999g=", - "_parent": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD1cp4=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 857, - "top": 455, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjsLb2RD+Mys=", - "_parent": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD1cp4=" - }, - "font": "Arial;13;0", - "left": 830, - "top": 492, - "width": 21.68359375, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "edgePosition": 2, - "text": "1" - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjsLb2RD/WLU=", - "_parent": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD2Uqs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1017, - "top": 513, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjsLb2REA5rE=", - "_parent": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD2Uqs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1019, - "top": 500, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjsLb2REBW4w=", - "_parent": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD2Uqs=" - }, - "font": "Arial;13;0", - "left": 1005, - "top": 541, - "width": 19.5126953125, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "text": "1..*" - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjsLb2RECDlA=", - "_parent": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD1cp4=" - }, - "visible": false, - "font": "Arial;13;0", - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjsLb2REDmXQ=", - "_parent": { - "$ref": "AAAAAAFnjsLb2BD4t1Y=" - }, - "model": { - "$ref": "AAAAAAFnjsLb1xD2Uqs=" - }, - "visible": false, - "font": "Arial;13;0", - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjpeueQ5KROA=" - }, - "tail": { - "$ref": "AAAAAAFnjrFoGRBjX1I=" - }, - "lineStyle": 1, - "points": "823:481;1039:541", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjsLb2BD5Nxc=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjsLb2BD6fkc=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjsLb2BD7ess=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnjsLb2BD8v4o=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnjsLb2BD999g=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnjsLb2RD+Mys=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnjsLb2RD/WLU=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnjsLb2REA5rE=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnjsLb2REBW4w=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnjsLb2RECDlA=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnjsLb2REDmXQ=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjsp5xhTszx0=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjsp5xhTtnCs=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTszx0=" - }, - "model": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjsp5xhTuVrY=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTtnCs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 528, - "top": -944, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjsp5xhTv5WQ=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTtnCs=" - }, - "font": "Arial;13;1", - "left": 1541, - "top": 311, - "width": 386.04541015625, - "height": 13, - "text": "TextEncoding AsyncTask" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjsp5xxTw0JY=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTtnCs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 528, - "top": -944, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjsp5xxTxvkE=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTtnCs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 528, - "top": -944, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 1536, - "top": 304, - "width": 396.04541015625, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjsp5xhTuVrY=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjsp5xhTv5WQ=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjsp5xxTw0JY=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjsp5xxTxvkE=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjsp5xxTyL8c=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTszx0=" - }, - "model": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "subViews": [ - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjtCZsBmlxS8=", - "_parent": { - "$ref": "AAAAAAFnjsp5xxTyL8c=" - }, - "model": { - "$ref": "AAAAAAFnjtCZhBmf+vA=" - }, - "font": "Arial;13;0", - "left": 1541, - "top": 334, - "width": 386.04541015625, - "height": 13, - "text": "+activity: Activity", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjtEaYBnev+g=", - "_parent": { - "$ref": "AAAAAAFnjsp5xxTyL8c=" - }, - "model": { - "$ref": "AAAAAAFnjtEaMhnY6Vg=" - }, - "font": "Arial;13;0", - "left": 1541, - "top": 349, - "width": 386.04541015625, - "height": 13, - "text": "+maximumProgress: int", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjtF+sRoohPQ=", - "_parent": { - "$ref": "AAAAAAFnjsp5xxTyL8c=" - }, - "model": { - "$ref": "AAAAAAFnjtF+hxoisLU=" - }, - "font": "Arial;13;0", - "left": 1541, - "top": 364, - "width": 386.04541015625, - "height": 13, - "text": "+progressdialog: ProgressDialog", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjtJAwhukG0M=", - "_parent": { - "$ref": "AAAAAAFnjsp5xxTyL8c=" - }, - "model": { - "$ref": "AAAAAAFnjtJAkRueTAc=" - }, - "font": "Arial;13;0", - "left": 1541, - "top": 379, - "width": 386.04541015625, - "height": 13, - "text": "+result: ImageSteganography", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjtPJ3x2L74E=", - "_parent": { - "$ref": "AAAAAAFnjsp5xxTyL8c=" - }, - "model": { - "$ref": "AAAAAAFnjtPJtx2FMhQ=" - }, - "font": "Arial;13;0", - "left": 1541, - "top": 394, - "width": 386.04541015625, - "height": 13, - "text": "+ callbackInterface: TextEncodingCallback", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 1536, - "top": 329, - "width": 396.04541015625, - "height": 83 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjsp5xxTzIoc=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTszx0=" - }, - "model": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "subViews": [ - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjtQjdB3/RmE=", - "_parent": { - "$ref": "AAAAAAFnjsp5xxTzIoc=" - }, - "model": { - "$ref": "AAAAAAFnjtQjTB35cEM=" - }, - "font": "Arial;13;0", - "left": 1541, - "top": 417, - "width": 386.04541015625, - "height": 13, - "text": "+TextExcoding(TextEncodingCallback, callbackInterface)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjtQs8R42pGA=", - "_parent": { - "$ref": "AAAAAAFnjsp5xxTzIoc=" - }, - "model": { - "$ref": "AAAAAAFnjtQsvx4wQuU=" - }, - "font": "Arial;13;0", - "left": 1541, - "top": 432, - "width": 386.04541015625, - "height": 13, - "text": "+onPreExecute()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjtQykx5tnD8=", - "_parent": { - "$ref": "AAAAAAFnjsp5xxTzIoc=" - }, - "model": { - "$ref": "AAAAAAFnjtQyYh5nG+A=" - }, - "font": "Arial;13;0", - "left": 1541, - "top": 447, - "width": 386.04541015625, - "height": 13, - "text": "+onPostExecute(textStegnography: ImageSteganography)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjtYzFiCPHJI=", - "_parent": { - "$ref": "AAAAAAFnjsp5xxTzIoc=" - }, - "model": { - "$ref": "AAAAAAFnjtYy6SCHEy4=" - }, - "font": "Arial;13;0", - "left": 1541, - "top": 462, - "width": 386.04541015625, - "height": 13, - "text": "+onProgressUpdate(values: Interger...)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjtcY9yF6fOI=", - "_parent": { - "$ref": "AAAAAAFnjsp5xxTzIoc=" - }, - "model": { - "$ref": "AAAAAAFnjtcYwSFyY8A=" - }, - "font": "Arial;13;0", - "left": 1541, - "top": 477, - "width": 386.04541015625, - "height": 13, - "text": "+doInBackground(imageSteganographies: ImageSteganography...)", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 1536, - "top": 412, - "width": 396.04541015625, - "height": 83 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjsp5xxT0tYM=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTszx0=" - }, - "model": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 264, - "top": -472, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjsp5xxT1O+4=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTszx0=" - }, - "model": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 264, - "top": -472, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 1536, - "top": 304, - "width": 396.04541015625, - "height": 191, - "nameCompartment": { - "$ref": "AAAAAAFnjsp5xhTtnCs=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjsp5xxTyL8c=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjsp5xxTzIoc=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjsp5xxT0tYM=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjsp5xxT1O+4=" - } - }, - { - "_type": "UMLNoteView", - "_id": "AAAAAAFnjs2nYBc9Gb8=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "font": "Arial;13;0", - "left": 928, - "top": 696, - "width": 77.82080078125, - "height": 77, - "text": "imgsteg shorthand for the class here" - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjtlUfiQZC9A=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjtlUfiQaf58=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQZC9A=" - }, - "model": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjtlUfiQbEaU=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQaf58=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1136, - "top": -544, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjtlUfiQcbL0=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQaf58=" - }, - "font": "Arial;13;1", - "left": 1573, - "top": 863, - "width": 1013.06689453125, - "height": 13, - "text": "EncodeDecode" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjtlUfiQdTV8=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQaf58=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1136, - "top": -544, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjtlUfiQeyvE=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQaf58=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1136, - "top": -544, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 1568, - "top": 856, - "width": 1023.06689453125, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjtlUfiQbEaU=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjtlUfiQcbL0=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjtlUfiQdTV8=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjtlUfiQeyvE=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjtlUfiQfupQ=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQZC9A=" - }, - "model": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "subViews": [ - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjtrBLiSkofk=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQfupQ=" - }, - "model": { - "$ref": "AAAAAAFnjtrBACSboao=" - }, - "font": "Arial;13;0", - "left": 1573, - "top": 886, - "width": 1013.06689453125, - "height": 13, - "underline": true, - "text": "-TAG = EncodeDecode.class.getName()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjtrSFSTb40k=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQfupQ=" - }, - "model": { - "$ref": "AAAAAAFnjtrR3iTSI4o=" - }, - "font": "Arial;13;0", - "left": 1573, - "top": 901, - "width": 1013.06689453125, - "height": 13, - "text": "-binary: int[] = {16, 8, 0};", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjtrZUSUSY6c=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQfupQ=" - }, - "model": { - "$ref": "AAAAAAFnjtrZHSUJL48=" - }, - "font": "Arial;13;0", - "left": 1573, - "top": 916, - "width": 1013.06689453125, - "height": 13, - "text": "-toShift: int[] = {6, 4, 2, 0};", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjtre8SVJTnE=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQfupQ=" - }, - "model": { - "$ref": "AAAAAAFnjtrewCVAbJ4=" - }, - "font": "Arial;13;0", - "left": 1573, - "top": 931, - "width": 1013.06689453125, - "height": 13, - "text": "-andByte: byte[] = {(byte) 0xC0, 0x30, 0x0C, 0x03};", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjtrk9iWAhV0=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQfupQ=" - }, - "model": { - "$ref": "AAAAAAFnjtrkxyV3kiQ=" - }, - "font": "Arial;13;0", - "left": 1573, - "top": 946, - "width": 1013.06689453125, - "height": 13, - "text": "-END_MESSAGE_COSTANT: String = \"#!@\"", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjtrrTSW3+iA=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQfupQ=" - }, - "model": { - "$ref": "AAAAAAFnjtrrGiWuI+c=" - }, - "font": "Arial;13;0", - "left": 1573, - "top": 961, - "width": 1013.06689453125, - "height": 13, - "text": "-START_MESSAGE_COSTANT: String = \"@!#\"", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 1568, - "top": 881, - "width": 1023.06689453125, - "height": 98 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjtlUfyQgB1Q=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQZC9A=" - }, - "model": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "subViews": [ - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjt3pQCnrp40=", - "_parent": { - "$ref": "AAAAAAFnjtlUfyQgB1Q=" - }, - "model": { - "$ref": "AAAAAAFnjt3pDiniTF8=" - }, - "font": "Arial;13;0", - "left": 1573, - "top": 984, - "width": 1013.06689453125, - "height": 91, - "autoResize": true, - "text": "-Byte[] EncodeMessage(integer_pixel_array: int[], image_columns: int, image_rows: int, messageEncodingStatus: MessageEncodingStatus, progressHandler: ProgressHandler)", - "horizontalAlignment": 0, - "wordWrap": true - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjuGz0C66V8o=", - "_parent": { - "$ref": "AAAAAAFnjtlUfyQgB1Q=" - }, - "model": { - "$ref": "AAAAAAFnjuGzoS6xwZ8=" - }, - "font": "Arial;13;0", - "left": 1573, - "top": 1077, - "width": 1013.06689453125, - "height": 13, - "text": "+List encodeMessage(splitted_images: List, encrypted_message: String , progressHandler: ProgressHandler)", - "horizontalAlignment": 0, - "wordWrap": true - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjuTUEzz8V1A=", - "_parent": { - "$ref": "AAAAAAFnjtlUfyQgB1Q=" - }, - "model": { - "$ref": "AAAAAAFnjuTT4jzttUs=" - }, - "font": "Arial;13;0", - "left": 1573, - "top": 1092, - "width": 1013.06689453125, - "height": 13, - "text": "+String dencodeMessage(encodedImages: List)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjuTeLj1URbE=", - "_parent": { - "$ref": "AAAAAAFnjtlUfyQgB1Q=" - }, - "model": { - "$ref": "AAAAAAFnjuTd+T1BYT8=" - }, - "font": "Arial;13;0", - "left": 1573, - "top": 1107, - "width": 1013.06689453125, - "height": 13, - "underline": true, - "text": "-void decodeMessage(byte_pixel_array: byte[], image_columns: int, image_rows: int, messagedecodingStatus: MessagedecodingStatus)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjueFZz9GkUE=", - "_parent": { - "$ref": "AAAAAAFnjtlUfyQgB1Q=" - }, - "model": { - "$ref": "AAAAAAFnjueFOT89wKU=" - }, - "font": "Arial;13;0", - "left": 1573, - "top": 1122, - "width": 1013.06689453125, - "height": 13, - "underline": true, - "text": "+int numberOfPixelForMessage(message: int)", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 1568, - "top": 979, - "width": 1023.06689453125, - "height": 161 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjtlUfyQh6ls=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQZC9A=" - }, - "model": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 568, - "top": -272, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjtlUfyQiU0c=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQZC9A=" - }, - "model": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 568, - "top": -272, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 1568, - "top": 856, - "width": 1023.06689453125, - "height": 284, - "nameCompartment": { - "$ref": "AAAAAAFnjtlUfiQaf58=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjtlUfiQfupQ=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjtlUfyQgB1Q=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjtlUfyQh6ls=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjtlUfyQiU0c=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjug21kDHYio=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjug21kDIXcQ=", - "_parent": { - "$ref": "AAAAAAFnjug21kDHYio=" - }, - "model": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjug21kDJj0k=", - "_parent": { - "$ref": "AAAAAAFnjug21kDIXcQ=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1808, - "top": -1232, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjug21kDKZ0U=", - "_parent": { - "$ref": "AAAAAAFnjug21kDIXcQ=" - }, - "font": "Arial;13;1", - "left": 2445, - "top": 783, - "width": 160.77978515625, - "height": 13, - "text": "MessageDecodingStatus" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjug21kDLvKA=", - "_parent": { - "$ref": "AAAAAAFnjug21kDIXcQ=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1808, - "top": -1232, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjug21kDMiwE=", - "_parent": { - "$ref": "AAAAAAFnjug21kDIXcQ=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1808, - "top": -1232, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 2440, - "top": 776, - "width": 170.77978515625, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjug21kDJj0k=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjug21kDKZ0U=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjug21kDLvKA=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjug21kDMiwE=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjug21kDNLX0=", - "_parent": { - "$ref": "AAAAAAFnjug21kDHYio=" - }, - "model": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "subViews": [ - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjujXH0GPsDA=", - "_parent": { - "$ref": "AAAAAAFnjug21kDNLX0=" - }, - "model": { - "$ref": "AAAAAAFnjujW6EGGgsc=" - }, - "font": "Arial;13;0", - "left": 2445, - "top": 806, - "width": 160.77978515625, - "height": 13, - "text": "+message: String", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjujd+kHGo8A=", - "_parent": { - "$ref": "AAAAAAFnjug21kDNLX0=" - }, - "model": { - "$ref": "AAAAAAFnjujdt0G98Is=" - }, - "font": "Arial;13;0", - "left": 2445, - "top": 821, - "width": 160.77978515625, - "height": 13, - "text": "+ended: boolean", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 2440, - "top": 801, - "width": 170.77978515625, - "height": 38 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjug21kDO84g=", - "_parent": { - "$ref": "AAAAAAFnjug21kDHYio=" - }, - "model": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "subViews": [ - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjuj0iEH8vWw=", - "_parent": { - "$ref": "AAAAAAFnjug21kDO84g=" - }, - "model": { - "$ref": "AAAAAAFnjuj0VEHz21Y=" - }, - "font": "Arial;13;0", - "left": 2445, - "top": 844, - "width": 160.77978515625, - "height": 13, - "text": "+MessageDecodingStatus()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjukkRkJMNJA=", - "_parent": { - "$ref": "AAAAAAFnjug21kDO84g=" - }, - "model": { - "$ref": "AAAAAAFnjukkDEJDF4g=" - }, - "font": "Arial;13;0", - "left": 2445, - "top": 859, - "width": 160.77978515625, - "height": 13, - "text": "+isEnded()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjuk2j0KDftc=", - "_parent": { - "$ref": "AAAAAAFnjug21kDO84g=" - }, - "model": { - "$ref": "AAAAAAFnjuk2UUJ6A2g=" - }, - "font": "Arial;13;0", - "left": 2445, - "top": 874, - "width": 160.77978515625, - "height": 13, - "text": "+setEnded()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjuk6bkK64JA=", - "_parent": { - "$ref": "AAAAAAFnjug21kDO84g=" - }, - "model": { - "$ref": "AAAAAAFnjuk6LUKxmJ8=" - }, - "font": "Arial;13;0", - "left": 2445, - "top": 889, - "width": 160.77978515625, - "height": 13, - "text": "+ getMessage()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjuk+EELx/Pc=", - "_parent": { - "$ref": "AAAAAAFnjug21kDO84g=" - }, - "model": { - "$ref": "AAAAAAFnjuk90ULorkM=" - }, - "font": "Arial;13;0", - "left": 2445, - "top": 904, - "width": 160.77978515625, - "height": 13, - "text": "+setMessage(message)", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 2440, - "top": 839, - "width": 170.77978515625, - "height": 83 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjug21kDP8ZE=", - "_parent": { - "$ref": "AAAAAAFnjug21kDHYio=" - }, - "model": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 904, - "top": -616, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjug21kDQz8E=", - "_parent": { - "$ref": "AAAAAAFnjug21kDHYio=" - }, - "model": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 904, - "top": -616, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 2440, - "top": 776, - "width": 170.77978515625, - "height": 146, - "nameCompartment": { - "$ref": "AAAAAAFnjug21kDIXcQ=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjug21kDNLX0=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjug21kDO84g=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjug21kDP8ZE=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjug21kDQz8E=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjupK6kVLElA=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjupK60VM4HM=", - "_parent": { - "$ref": "AAAAAAFnjupK6kVLElA=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjupK60VNfm4=", - "_parent": { - "$ref": "AAAAAAFnjupK60VM4HM=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1932, - "top": -2206, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjupK60VOJYs=", - "_parent": { - "$ref": "AAAAAAFnjupK60VM4HM=" - }, - "font": "Arial;13;1", - "left": 2325, - "top": 471, - "width": 295.22314453125, - "height": 13, - "text": "MessageEncodingStatus" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjupK60VP68Y=", - "_parent": { - "$ref": "AAAAAAFnjupK60VM4HM=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1932, - "top": -2206, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjupK60VQwds=", - "_parent": { - "$ref": "AAAAAAFnjupK60VM4HM=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1932, - "top": -2206, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 2320, - "top": 464, - "width": 305.22314453125, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjupK60VNfm4=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjupK60VOJYs=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjupK60VP68Y=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjupK60VQwds=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjupK60VRC5g=", - "_parent": { - "$ref": "AAAAAAFnjupK6kVLElA=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "subViews": [ - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjupLJEV3Ess=", - "_parent": { - "$ref": "AAAAAAFnjupK60VRC5g=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEUyIqk=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 494, - "width": 295.22314453125, - "height": 13, - "text": "+messageEncoded: boolean", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjupLJEV62js=", - "_parent": { - "$ref": "AAAAAAFnjupK60VRC5g=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEUzoEw=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 509, - "width": 295.22314453125, - "height": 13, - "text": "+currentMessageIndex: int", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnju769lIEr0w=", - "_parent": { - "$ref": "AAAAAAFnjupK60VRC5g=" - }, - "model": { - "$ref": "AAAAAAFnju76vlH7OoU=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 524, - "width": 295.22314453125, - "height": 13, - "text": "+byteArrayMessage: byte[]", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnju8yalLksQc=", - "_parent": { - "$ref": "AAAAAAFnjupK60VRC5g=" - }, - "model": { - "$ref": "AAAAAAFnju8yNVLbOwU=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 539, - "width": 295.22314453125, - "height": 13, - "text": "+message: String ", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 2320, - "top": 489, - "width": 305.22314453125, - "height": 68 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjupK60VSI2g=", - "_parent": { - "$ref": "AAAAAAFnjupK6kVLElA=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "subViews": [ - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjupLJEV9iWw=", - "_parent": { - "$ref": "AAAAAAFnjupK60VSI2g=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEU0tZI=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 562, - "width": 295.22314453125, - "height": 13, - "text": "+incrementMessageIndex()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjupLJUWADng=", - "_parent": { - "$ref": "AAAAAAFnjupK60VSI2g=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEU12YQ=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 577, - "width": 295.22314453125, - "height": 13, - "text": "+getMessage()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjupLJUWDzME=", - "_parent": { - "$ref": "AAAAAAFnjupK60VSI2g=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEU2O5I=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 592, - "width": 295.22314453125, - "height": 13, - "text": "+setMessage(message)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjupLJUWGavI=", - "_parent": { - "$ref": "AAAAAAFnjupK60VSI2g=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEU3pds=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 607, - "width": 295.22314453125, - "height": 13, - "text": "+isMessageEncoded()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjupLJUWJh6k=", - "_parent": { - "$ref": "AAAAAAFnjupK60VSI2g=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEU4Yn4=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 622, - "width": 295.22314453125, - "height": 13, - "text": "+setMessageEncoded(messageEncoded: boolean)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjuv3WUfaQtU=", - "_parent": { - "$ref": "AAAAAAFnjupK60VSI2g=" - }, - "model": { - "$ref": "AAAAAAFnjuv3F0fRkHI=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 637, - "width": 295.22314453125, - "height": 13, - "text": "+getCurrentMessageIndex()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjuv9I0gRyZ4=", - "_parent": { - "$ref": "AAAAAAFnjupK60VSI2g=" - }, - "model": { - "$ref": "AAAAAAFnjuv84UgIEi4=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 652, - "width": 295.22314453125, - "height": 13, - "text": "+setCurrentMessageIndex(currentMessageIndex)", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjuwCHEhI3xo=", - "_parent": { - "$ref": "AAAAAAFnjupK60VSI2g=" - }, - "model": { - "$ref": "AAAAAAFnjuwB3kg/srI=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 667, - "width": 295.22314453125, - "height": 13, - "text": "+ byte[] getByteArrayMessage()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjuwGD0h/vWM=", - "_parent": { - "$ref": "AAAAAAFnjupK60VSI2g=" - }, - "model": { - "$ref": "AAAAAAFnjuwF2Eh2OZA=" - }, - "font": "Arial;13;0", - "left": 2325, - "top": 682, - "width": 295.22314453125, - "height": 13, - "text": "+void setByteArrayMessage()", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 2320, - "top": 557, - "width": 305.22314453125, - "height": 143 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjupK60VTrig=", - "_parent": { - "$ref": "AAAAAAFnjupK6kVLElA=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 966, - "top": -1103, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjupK60VUpvc=", - "_parent": { - "$ref": "AAAAAAFnjupK6kVLElA=" - }, - "model": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 966, - "top": -1103, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 2320, - "top": 464, - "width": 305.22314453125, - "height": 236, - "nameCompartment": { - "$ref": "AAAAAAFnjupK60VM4HM=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjupK60VRC5g=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjupK60VSI2g=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjupK60VTrig=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjupK60VUpvc=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnju15R0sV9u8=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnju15RksRacw=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju15R0sWGy4=", - "_parent": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "model": { - "$ref": "AAAAAAFnju15RksRacw=" - }, - "font": "Arial;13;0", - "left": 2234, - "top": 944, - "width": 58.169921875, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "edgePosition": 1, - "text": "+subclass" - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju15R0sX4zA=", - "_parent": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "model": { - "$ref": "AAAAAAFnju15RksRacw=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 2268, - "top": 958, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju15R0sYKnw=", - "_parent": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "model": { - "$ref": "AAAAAAFnju15RksRacw=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2254, - "top": 915, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju15R0sZ2MI=", - "_parent": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "model": { - "$ref": "AAAAAAFnju15RksSN4Y=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2419, - "top": 892, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju15R0saFug=", - "_parent": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "model": { - "$ref": "AAAAAAFnju15RksSN4Y=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2421, - "top": 905, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju15R0sb1Yk=", - "_parent": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "model": { - "$ref": "AAAAAAFnju15RksSN4Y=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2414, - "top": 865, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju15R0scOac=", - "_parent": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "model": { - "$ref": "AAAAAAFnju15RksT0VU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2108, - "top": 996, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnju15R0sV9u8=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju15R0sdbt8=", - "_parent": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "model": { - "$ref": "AAAAAAFnju15RksT0VU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2114, - "top": 1008, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnju15R0sV9u8=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju15R0seb9A=", - "_parent": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "model": { - "$ref": "AAAAAAFnju15RksT0VU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2095, - "top": 972, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnju15R0sV9u8=" - } - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnju15R0sf6pw=", - "_parent": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "model": { - "$ref": "AAAAAAFnju15RksSN4Y=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 520, - "top": -1616, - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnju15R0sg7Rs=", - "_parent": { - "$ref": "AAAAAAFnju15R0sV9u8=" - }, - "model": { - "$ref": "AAAAAAFnju15RksT0VU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 520, - "top": -1616, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjtlUfiQZC9A=" - }, - "tail": { - "$ref": "AAAAAAFnjug21kDHYio=" - }, - "lineStyle": 1, - "points": "2439:876;2079:997", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnju15R0sWGy4=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnju15R0sX4zA=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnju15R0sYKnw=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnju15R0sZ2MI=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnju15R0saFug=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnju15R0sb1Yk=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnju15R0scOac=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnju15R0sdbt8=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnju15R0seb9A=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnju15R0sf6pw=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnju15R0sg7Rs=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnju27dUu2W88=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnju27dUuynDA=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju27dUu3V6A=", - "_parent": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "model": { - "$ref": "AAAAAAFnju27dUuynDA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2296, - "top": 781, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju27dUu4BPQ=", - "_parent": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "model": { - "$ref": "AAAAAAFnju27dUuynDA=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 2307, - "top": 791, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju27dUu5FeA=", - "_parent": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "model": { - "$ref": "AAAAAAFnju27dUuynDA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2275, - "top": 760, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju27dUu6ZTE=", - "_parent": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "model": { - "$ref": "AAAAAAFnju27dUuzI4Q=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2353, - "top": 723, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju27dUu7HwQ=", - "_parent": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "model": { - "$ref": "AAAAAAFnju27dUuzI4Q=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2361, - "top": 733, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju27dUu8MGM=", - "_parent": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "model": { - "$ref": "AAAAAAFnju27dUuzI4Q=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2336, - "top": 701, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju27dUu9dC0=", - "_parent": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "model": { - "$ref": "AAAAAAFnju27dUu0GAY=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2241, - "top": 840, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnju27dUu2W88=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju27dUu+nFQ=", - "_parent": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "model": { - "$ref": "AAAAAAFnju27dUu0GAY=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2252, - "top": 847, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnju27dUu2W88=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnju27dUu/X3g=", - "_parent": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "model": { - "$ref": "AAAAAAFnju27dUu0GAY=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2218, - "top": 824, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnju27dUu2W88=" - } - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnju27dkvASFk=", - "_parent": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "model": { - "$ref": "AAAAAAFnju27dUuzI4Q=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 448, - "top": -1680, - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnju27dkvBTLU=", - "_parent": { - "$ref": "AAAAAAFnju27dUu2W88=" - }, - "model": { - "$ref": "AAAAAAFnju27dUu0GAY=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 448, - "top": -1680, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjtlUfiQZC9A=" - }, - "tail": { - "$ref": "AAAAAAFnjupK6kVLElA=" - }, - "lineStyle": 1, - "points": "2360:700;2213:855", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnju27dUu3V6A=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnju27dUu4BPQ=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnju27dUu5FeA=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnju27dUu6ZTE=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnju27dUu7HwQ=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnju27dUu8MGM=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnju27dUu9dC0=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnju27dUu+nFQ=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnju27dUu/X3g=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnju27dkvASFk=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnju27dkvBTLU=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnjvDAuV73JWs=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV7zqL8=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvDAuV74vbU=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV7zqL8=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1905, - "top": 661, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvDAuV75xL4=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV7zqL8=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 1918, - "top": 653, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvDAuV765JA=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV7zqL8=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1880, - "top": 676, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvDAuV77V4U=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV70XNc=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1814, - "top": 503, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvDAuV78Wrw=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV70XNc=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1827, - "top": 499, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvDAuV792y4=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV70XNc=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1789, - "top": 513, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvDAuV7+ClI=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV71sRA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1996, - "top": 819, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvDAuV7/y1I=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV71sRA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 2007, - "top": 810, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvDAuV8AS+Q=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV71sRA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1975, - "top": 836, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - } - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjvDAuV8BWFU=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV70XNc=" - }, - "visible": false, - "fillColor": "#a3e0ff", - "font": "Arial;13;0", - "left": 272, - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjvDAuV8C9aw=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV73JWs=" - }, - "model": { - "$ref": "AAAAAAFnjvDAuV71sRA=" - }, - "visible": false, - "fillColor": "#a3e0ff", - "font": "Arial;13;0", - "left": 272, - "width": 10, - "height": 10 - } - ], - "fillColor": "#a3e0ff", - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjtlUfiQZC9A=" - }, - "tail": { - "$ref": "AAAAAAFnjsp5xhTszx0=" - }, - "lineStyle": 1, - "points": "1789:495;1997:855", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjvDAuV74vbU=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjvDAuV75xL4=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjvDAuV765JA=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnjvDAuV77V4U=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnjvDAuV78Wrw=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnjvDAuV792y4=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnjvDAuV7+ClI=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnjvDAuV7/y1I=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnjvDAuV8AS+Q=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnjvDAuV8BWFU=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnjvDAuV8C9aw=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjvIVImdrpwQ=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjvIVImdpVBY=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjvIVImdsPhk=", - "_parent": { - "$ref": "AAAAAAFnjvIVImdrpwQ=" - }, - "model": { - "$ref": "AAAAAAFnjvIVImdpVBY=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjvIVImdtUDI=", - "_parent": { - "$ref": "AAAAAAFnjvIVImdsPhk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 432, - "top": 160, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjvIVImduzm0=", - "_parent": { - "$ref": "AAAAAAFnjvIVImdsPhk=" - }, - "font": "Arial;13;1", - "left": 1877, - "top": 711, - "width": 36.11181640625, - "height": 13, - "text": "Utility" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjvIVImdvNZo=", - "_parent": { - "$ref": "AAAAAAFnjvIVImdsPhk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 432, - "top": 160, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjvIVImdw80s=", - "_parent": { - "$ref": "AAAAAAFnjvIVImdsPhk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 432, - "top": 160, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 1872, - "top": 704, - "width": 46.11181640625, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjvIVImdtUDI=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjvIVImduzm0=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjvIVImdvNZo=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjvIVImdw80s=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjvIVImdxKXw=", - "_parent": { - "$ref": "AAAAAAFnjvIVImdrpwQ=" - }, - "model": { - "$ref": "AAAAAAFnjvIVImdpVBY=" - }, - "font": "Arial;13;0", - "left": 1872, - "top": 729, - "width": 46.11181640625, - "height": 10 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjvIVImdye2s=", - "_parent": { - "$ref": "AAAAAAFnjvIVImdrpwQ=" - }, - "model": { - "$ref": "AAAAAAFnjvIVImdpVBY=" - }, - "font": "Arial;13;0", - "left": 1872, - "top": 739, - "width": 46.11181640625, - "height": 10 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjvIVI2dzE4E=", - "_parent": { - "$ref": "AAAAAAFnjvIVImdrpwQ=" - }, - "model": { - "$ref": "AAAAAAFnjvIVImdpVBY=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 216, - "top": 80, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjvIVI2d04Do=", - "_parent": { - "$ref": "AAAAAAFnjvIVImdrpwQ=" - }, - "model": { - "$ref": "AAAAAAFnjvIVImdpVBY=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 216, - "top": 80, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 1872, - "top": 704, - "width": 46.11181640625, - "height": 57, - "nameCompartment": { - "$ref": "AAAAAAFnjvIVImdsPhk=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjvIVImdxKXw=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjvIVImdye2s=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjvIVI2dzE4E=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjvIVI2d04Do=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnjvJESmnG7OQ=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnCQio=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvJESmnHrx0=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnCQio=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1842, - "top": 586, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvJESmnI0/c=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnCQio=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 1855, - "top": 579, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvJESmnJTcM=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnCQio=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1815, - "top": 599, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvJESmnKhh8=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnDn+Q=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1803, - "top": 505, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvJES2nL7WY=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnDn+Q=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1816, - "top": 502, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvJES2nMuJM=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnDn+Q=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1777, - "top": 513, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvJES2nNQR0=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnEmic=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1882, - "top": 667, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvJES2nOyyg=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnEmic=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1893, - "top": 659, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvJES2nPxtY=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnEmic=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1859, - "top": 682, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - } - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjvJES2nQl2g=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnDn+Q=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 488, - "top": 40, - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjvJES2nRZ+w=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnG7OQ=" - }, - "model": { - "$ref": "AAAAAAFnjvJESmnEmic=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 488, - "top": 40, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjvIVImdrpwQ=" - }, - "tail": { - "$ref": "AAAAAAFnjsp5xhTszx0=" - }, - "lineStyle": 1, - "points": "1779:495;1880:703", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjvJESmnHrx0=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjvJESmnI0/c=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjvJESmnJTcM=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnjvJESmnKhh8=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnjvJES2nL7WY=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnjvJES2nMuJM=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnjvJES2nNQR0=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnjvJES2nOyyg=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnjvJES2nPxtY=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnjvJES2nQl2g=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnjvJES2nRZ+w=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnjvMkqXyqGxY=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHymdzs=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvMkqXyr9hc=", - "_parent": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHymdzs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1429, - "top": 477, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvMkqXys3OU=", - "_parent": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHymdzs=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 1424, - "top": 463, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvMkqXytVBY=", - "_parent": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHymdzs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1438, - "top": 506, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvMkqXyupvE=", - "_parent": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHyn3Ss=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1352, - "top": 503, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvMkqXyve0o=", - "_parent": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHyn3Ss=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1350, - "top": 490, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvMkqXyw/JQ=", - "_parent": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHyn3Ss=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1357, - "top": 531, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvMkqXyxay0=", - "_parent": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHyocGo=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1505, - "top": 452, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvMkqXyyFAU=", - "_parent": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHyocGo=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1499, - "top": 441, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvMkqXyzbo8=", - "_parent": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHyocGo=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1518, - "top": 477, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - } - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjvMkqXy036Q=", - "_parent": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHyn3Ss=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 272, - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjvMkqXy1T10=", - "_parent": { - "$ref": "AAAAAAFnjvMkqXyqGxY=" - }, - "model": { - "$ref": "AAAAAAFnjvMkqHyocGo=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 272, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjsp5xhTszx0=" - }, - "tail": { - "$ref": "AAAAAAFnjpeueQ5KROA=" - }, - "lineStyle": 1, - "points": "1333:532;1535:465", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjvMkqXyr9hc=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjvMkqXys3OU=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjvMkqXytVBY=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnjvMkqXyupvE=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnjvMkqXyve0o=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnjvMkqXyw/JQ=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnjvMkqXyxay0=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnjvMkqXyyFAU=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnjvMkqXyzbo8=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnjvMkqXy036Q=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnjvMkqXy1T10=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnjvNbWX3+RoI=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX36geQ=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvNbWX3/J1c=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX36geQ=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1178, - "top": 398, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvNbWX4A948=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX36geQ=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 1177, - "top": 383, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvNbWX4BKQs=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX36geQ=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1179, - "top": 427, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvNbWX4CGYw=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX37JTU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 848, - "top": 410, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvNbWX4DfNc=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX37JTU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 850, - "top": 396, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvNbWX4EqVQ=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX37JTU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 845, - "top": 437, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvNbWX4F6zE=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX38ZTk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1508, - "top": 385, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvNbWX4G2j4=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX38ZTk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1505, - "top": 372, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvNbWX4HTo8=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX38ZTk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1513, - "top": 413, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - } - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjvNbWX4I72A=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX37JTU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 272, - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjvNbWX4JBBo=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX3+RoI=" - }, - "model": { - "$ref": "AAAAAAFnjvNbWX38ZTk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 272, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjsp5xhTszx0=" - }, - "tail": { - "$ref": "AAAAAAFnjrFoGRBjX1I=" - }, - "lineStyle": 1, - "points": "823:432;1535:406", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjvNbWX3/J1c=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjvNbWX4A948=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjvNbWX4BKQs=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnjvNbWX4CGYw=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnjvNbWX4DfNc=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnjvNbWX4EqVQ=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnjvNbWX4F6zE=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnjvNbWX4G2j4=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnjvNbWX4HTo8=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnjvNbWX4I72A=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnjvNbWX4JBBo=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjvggTpR7GTY=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjvggTZR5l9s=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjvggTpR8QkA=", - "_parent": { - "$ref": "AAAAAAFnjvggTpR7GTY=" - }, - "model": { - "$ref": "AAAAAAFnjvggTZR5l9s=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjvggTpR9Ig4=", - "_parent": { - "$ref": "AAAAAAFnjvggTpR8QkA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": -32, - "top": -816, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjvggTpR+Nbk=", - "_parent": { - "$ref": "AAAAAAFnjvggTpR8QkA=" - }, - "font": "Arial;13;1", - "left": 2109, - "top": 407, - "width": 130.75537109375, - "height": 13, - "text": "Android.Utils.Base64" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjvggTpR/md8=", - "_parent": { - "$ref": "AAAAAAFnjvggTpR8QkA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": -32, - "top": -816, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjvggTpSA1RE=", - "_parent": { - "$ref": "AAAAAAFnjvggTpR8QkA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": -32, - "top": -816, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 2104, - "top": 400, - "width": 140.75537109375, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjvggTpR9Ig4=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjvggTpR+Nbk=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjvggTpR/md8=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjvggTpSA1RE=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjvggTpSBoOo=", - "_parent": { - "$ref": "AAAAAAFnjvggTpR7GTY=" - }, - "model": { - "$ref": "AAAAAAFnjvggTZR5l9s=" - }, - "font": "Arial;13;0", - "left": 2104, - "top": 425, - "width": 140.75537109375, - "height": 10 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjvggTpSCgE8=", - "_parent": { - "$ref": "AAAAAAFnjvggTpR7GTY=" - }, - "model": { - "$ref": "AAAAAAFnjvggTZR5l9s=" - }, - "font": "Arial;13;0", - "left": 2104, - "top": 435, - "width": 140.75537109375, - "height": 10 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjvggTpSDhcM=", - "_parent": { - "$ref": "AAAAAAFnjvggTpR7GTY=" - }, - "model": { - "$ref": "AAAAAAFnjvggTZR5l9s=" - }, - "visible": false, - "font": "Arial;13;0", - "left": -16, - "top": -408, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjvggTpSEiuQ=", - "_parent": { - "$ref": "AAAAAAFnjvggTpR7GTY=" - }, - "model": { - "$ref": "AAAAAAFnjvggTZR5l9s=" - }, - "visible": false, - "font": "Arial;13;0", - "left": -16, - "top": -408, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 2104, - "top": 400, - "width": 140.75537109375, - "height": 45, - "nameCompartment": { - "$ref": "AAAAAAFnjvggTpR8QkA=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjvggTpSBoOo=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjvggTpSCgE8=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjvggTpSDhcM=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjvggTpSEiuQ=" - } - }, - { - "_type": "UMLDependencyView", - "_id": "AAAAAAFnjvhqvJV98I8=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjvhqvJV7i1E=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvhqvJV+Vzs=", - "_parent": { - "$ref": "AAAAAAFnjvhqvJV98I8=" - }, - "model": { - "$ref": "AAAAAAFnjvhqvJV7i1E=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1994, - "top": 242, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjvhqvJV98I8=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvhqvJV/QgM=", - "_parent": { - "$ref": "AAAAAAFnjvhqvJV98I8=" - }, - "model": { - "$ref": "AAAAAAFnjvhqvJV7i1E=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 2004, - "top": 231, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjvhqvJV98I8=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjvhqvJWAiOw=", - "_parent": { - "$ref": "AAAAAAFnjvhqvJV98I8=" - }, - "model": { - "$ref": "AAAAAAFnjvhqvJV7i1E=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1975, - "top": 265, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjvhqvJV98I8=" - }, - "edgePosition": 1 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjvggTpR7GTY=" - }, - "tail": { - "$ref": "AAAAAAFnjp66Gg7qarI=" - }, - "lineStyle": 1, - "points": "1824:121;2146:399", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjvhqvJV+Vzs=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjvhqvJV/QgM=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjvhqvJWAiOw=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjvl596x0+34=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjvl596xybT4=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjvl596x1fVs=", - "_parent": { - "$ref": "AAAAAAFnjvl596x0+34=" - }, - "model": { - "$ref": "AAAAAAFnjvl596xybT4=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjvl596x2oo8=", - "_parent": { - "$ref": "AAAAAAFnjvl596x1fVs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 576, - "top": -768, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjvl596x3IUQ=", - "_parent": { - "$ref": "AAAAAAFnjvl596x1fVs=" - }, - "font": "Arial;13;1", - "left": 1301, - "top": 759, - "width": 269.17236328125, - "height": 13, - "text": "TextDecoding AsyncTask" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjvl596x4934=", - "_parent": { - "$ref": "AAAAAAFnjvl596x1fVs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 576, - "top": -768, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjvl5+Kx5ik4=", - "_parent": { - "$ref": "AAAAAAFnjvl596x1fVs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 576, - "top": -768, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 1296, - "top": 752, - "width": 279.17236328125, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjvl596x2oo8=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjvl596x3IUQ=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjvl596x4934=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjvl5+Kx5ik4=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjvl5+Kx6oJ8=", - "_parent": { - "$ref": "AAAAAAFnjvl596x0+34=" - }, - "model": { - "$ref": "AAAAAAFnjvl596xybT4=" - }, - "subViews": [ - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjvowW64fuUQ=", - "_parent": { - "$ref": "AAAAAAFnjvl5+Kx6oJ8=" - }, - "model": { - "$ref": "AAAAAAFnjvowHK4EVoM=" - }, - "font": "Arial;13;0", - "left": 1301, - "top": 782, - "width": 269.17236328125, - "height": 13, - "text": "+result: ImageSteganography ", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjvp3iK/vg/c=", - "_parent": { - "$ref": "AAAAAAFnjvl5+Kx6oJ8=" - }, - "model": { - "$ref": "AAAAAAFnjvp3Ta/UwfQ=" - }, - "font": "Arial;13;0", - "left": 1301, - "top": 797, - "width": 269.17236328125, - "height": 13, - "text": "+textDecodingCallback: TextDecodingCallback", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjvrDxrGn9iU=", - "_parent": { - "$ref": "AAAAAAFnjvl5+Kx6oJ8=" - }, - "model": { - "$ref": "AAAAAAFnjvrDjbGMPtI=" - }, - "font": "Arial;13;0", - "left": 1301, - "top": 812, - "width": 269.17236328125, - "height": 13, - "text": "+activity: Activity ", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 1296, - "top": 777, - "width": 279.17236328125, - "height": 53 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjvl5+Kx74JM=", - "_parent": { - "$ref": "AAAAAAFnjvl596x0+34=" - }, - "model": { - "$ref": "AAAAAAFnjvl596xybT4=" - }, - "font": "Arial;13;0", - "left": 1296, - "top": 830, - "width": 279.17236328125, - "height": 10 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjvl5+Kx8M+k=", - "_parent": { - "$ref": "AAAAAAFnjvl596x0+34=" - }, - "model": { - "$ref": "AAAAAAFnjvl596xybT4=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 288, - "top": -384, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjvl5+Kx9o3I=", - "_parent": { - "$ref": "AAAAAAFnjvl596x0+34=" - }, - "model": { - "$ref": "AAAAAAFnjvl596xybT4=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 288, - "top": -384, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 1296, - "top": 752, - "width": 279.17236328125, - "height": 88, - "nameCompartment": { - "$ref": "AAAAAAFnjvl596x1fVs=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjvl5+Kx6oJ8=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjvl5+Kx74JM=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjvl5+Kx8M+k=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjvl5+Kx9o3I=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnjv11neSnOac=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSjm3g=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv11neSozy4=", - "_parent": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSjm3g=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1367, - "top": 711, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv11neSpJZY=", - "_parent": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSjm3g=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 1377, - "top": 700, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv11neSqcjs=", - "_parent": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSjm3g=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1348, - "top": 734, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv11neSrO5A=", - "_parent": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSkbAU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1361, - "top": 706, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv11neSsGg0=", - "_parent": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSkbAU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1371, - "top": 697, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv11neSt5UA=", - "_parent": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSkbAU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1340, - "top": 724, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv11neSuQ9I=", - "_parent": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSll9A=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1373, - "top": 716, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjv11neSnOac=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv11neSvl3s=", - "_parent": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSll9A=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1380, - "top": 705, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjv11neSnOac=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv11neSwx7w=", - "_parent": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSll9A=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1359, - "top": 740, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjv11neSnOac=" - } - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjv11neSxTdE=", - "_parent": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSkbAU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 272, - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjv11neSy1VE=", - "_parent": { - "$ref": "AAAAAAFnjv11neSnOac=" - }, - "model": { - "$ref": "AAAAAAFnjv11nOSll9A=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 272, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjvl596x0+34=" - }, - "tail": { - "$ref": "AAAAAAFnjpeueQ5KROA=" - }, - "lineStyle": 1, - "points": "1332:707;1384:751", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjv11neSozy4=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjv11neSpJZY=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjv11neSqcjs=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnjv11neSrO5A=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnjv11neSsGg0=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnjv11neSt5UA=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnjv11neSuQ9I=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnjv11neSvl3s=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnjv11neSwx7w=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnjv11neSxTdE=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnjv11neSy1VE=" - } - }, - { - "_type": "UMLDependencyView", - "_id": "AAAAAAFnjv9zlem30f4=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjv9zlem1ROw=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv9zlem4nOU=", - "_parent": { - "$ref": "AAAAAAFnjv9zlem30f4=" - }, - "model": { - "$ref": "AAAAAAFnjv9zlem1ROw=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1525, - "top": 271, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjv9zlem30f4=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv9zlem5nQY=", - "_parent": { - "$ref": "AAAAAAFnjv9zlem30f4=" - }, - "model": { - "$ref": "AAAAAAFnjv9zlem1ROw=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 1515, - "top": 259, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjv9zlem30f4=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjv9zlem6cRQ=", - "_parent": { - "$ref": "AAAAAAFnjv9zlem30f4=" - }, - "model": { - "$ref": "AAAAAAFnjv9zlem1ROw=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1544, - "top": 294, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjv9zlem30f4=" - }, - "edgePosition": 1 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjp66Gg7qarI=" - }, - "tail": { - "$ref": "AAAAAAFnjpeueQ5KROA=" - }, - "lineStyle": 1, - "points": "1333:458;1737:121", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjv9zlem4nOU=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjv9zlem5nQY=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjv9zlem6cRQ=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnjwB7R/OqL3o=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOm/8g=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwB7R/OrO6Q=", - "_parent": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOm/8g=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1604, - "top": 826, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwB7R/OspVk=", - "_parent": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOm/8g=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 1608, - "top": 812, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwB7SPOtSto=", - "_parent": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOm/8g=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1595, - "top": 855, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwB7SPOuHB0=", - "_parent": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOnQNo=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1604, - "top": 826, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwB7SPOvReI=", - "_parent": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOnQNo=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1610, - "top": 814, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwB7SPOwU3E=", - "_parent": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOnQNo=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1591, - "top": 851, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwB7SPOxc9M=", - "_parent": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOoSvY=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1605, - "top": 826, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwB7SPOyFLM=", - "_parent": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOoSvY=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1607, - "top": 813, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwB7SPOzDtU=", - "_parent": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOoSvY=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1601, - "top": 854, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - } - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjwB7SPO0ERY=", - "_parent": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOnQNo=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 272, - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjwB7SPO1+Yk=", - "_parent": { - "$ref": "AAAAAAFnjwB7R/OqL3o=" - }, - "model": { - "$ref": "AAAAAAFnjwB7RvOoSvY=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 272, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjtlUfiQZC9A=" - }, - "tail": { - "$ref": "AAAAAAFnjvl596x0+34=" - }, - "lineStyle": 1, - "points": "1575:839;1626:855", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjwB7R/OrO6Q=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjwB7R/OspVk=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjwB7SPOtSto=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnjwB7SPOuHB0=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnjwB7SPOvReI=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnjwB7SPOwU3E=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnjwB7SPOxc9M=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnjwB7SPOyFLM=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnjwB7SPOzDtU=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnjwB7SPO0ERY=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnjwB7SPO1+Yk=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjwMf1RBJ4cA=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjwMf1RBKoCk=", - "_parent": { - "$ref": "AAAAAAFnjwMf1RBJ4cA=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjwMf1RBLbdE=", - "_parent": { - "$ref": "AAAAAAFnjwMf1RBKoCk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 224, - "top": -1198, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjwMf1RBMLDA=", - "_parent": { - "$ref": "AAAAAAFnjwMf1RBKoCk=" - }, - "font": "Arial;13;1", - "left": 485, - "top": 647, - "width": 331.3349609375, - "height": 13, - "text": "UI _ DECODE" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjwMf1hBN/Qw=", - "_parent": { - "$ref": "AAAAAAFnjwMf1RBKoCk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 224, - "top": -1198, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjwMf1hBOl7o=", - "_parent": { - "$ref": "AAAAAAFnjwMf1RBKoCk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 224, - "top": -1198, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 480, - "top": 640, - "width": 341.3349609375, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjwMf1RBLbdE=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjwMf1RBMLDA=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjwMf1hBN/Qw=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjwMf1hBOl7o=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjwMf1hBPPJU=", - "_parent": { - "$ref": "AAAAAAFnjwMf1RBJ4cA=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "subViews": [ - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjwMgExDzkzY=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBPPJU=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/JZiA=" - }, - "font": "Arial;13;0", - "left": 485, - "top": 670, - "width": 331.3349609375, - "height": 13, - "underline": true, - "text": "-SELECT_PICTURE: String = 100", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjwMgExD21xM=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBPPJU=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/Kvas=" - }, - "font": "Arial;13;0", - "left": 485, - "top": 685, - "width": 331.3349609375, - "height": 13, - "underline": true, - "text": "-TAG: String = Decode Class", - "horizontalAlignment": 0 - }, - { - "_type": "UMLAttributeView", - "_id": "AAAAAAFnjwMgExD/ClE=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBPPJU=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/NI5E=" - }, - "font": "Arial;13;0", - "left": 485, - "top": 700, - "width": 331.3349609375, - "height": 13, - "text": "-result: ImageSteganography", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 480, - "top": 665, - "width": 341.3349609375, - "height": 53 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjwMf1hBQvws=", - "_parent": { - "$ref": "AAAAAAFnjwMf1RBJ4cA=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "subViews": [ - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjwMgFBEF9fM=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBQvws=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/PE8I=" - }, - "font": "Arial;13;0", - "left": 485, - "top": 723, - "width": 331.3349609375, - "height": 13, - "text": "+void ImageChooser()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjwMgFBEIGnM=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBQvws=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/Ql7o=" - }, - "font": "Arial;13;0", - "left": 485, - "top": 738, - "width": 331.3349609375, - "height": 13, - "text": "+OnPressENCODE()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjwMgFBELFX8=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBQvws=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bg/RQB8=" - }, - "font": "Arial;13;0", - "left": 485, - "top": 753, - "width": 331.3349609375, - "height": 13, - "text": "+OnPressDECODE()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjwMgFBEOftI=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBQvws=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bg/SEdA=" - }, - "font": "Arial;13;0", - "left": 485, - "top": 768, - "width": 331.3349609375, - "height": 13, - "text": "+onCompleteTextEncoding(result: ImageSteganography )", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjwMgFBEUke8=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBQvws=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bg/Wxzo=" - }, - "font": "Arial;13;0", - "left": 485, - "top": 783, - "width": 331.3349609375, - "height": 13, - "text": "+onActivityResult()", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 480, - "top": 718, - "width": 341.3349609375, - "height": 83 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjwMf1hBRB9M=", - "_parent": { - "$ref": "AAAAAAFnjwMf1RBJ4cA=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 112, - "top": -599, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjwMf1hBScr4=", - "_parent": { - "$ref": "AAAAAAFnjwMf1RBJ4cA=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 112, - "top": -599, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 480, - "top": 640, - "width": 341.3349609375, - "height": 221, - "nameCompartment": { - "$ref": "AAAAAAFnjwMf1RBKoCk=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjwMf1hBPPJU=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjwMf1hBQvws=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjwMf1hBRB9M=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjwMf1hBScr4=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnjwMf1hBTNhk=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/AQTQ=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwMf1hBUIUM=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/AQTQ=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 925, - "top": 640, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwMf1hBVu/Y=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/AQTQ=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 921, - "top": 626, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwMf1xBWnKg=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/AQTQ=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 934, - "top": 669, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwMf1xBXekg=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/Bgz8=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 841, - "top": 667, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwMf1xBYFHU=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/Bgz8=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 839, - "top": 654, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwMf1xBZIyo=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/Bgz8=" - }, - "font": "Arial;13;0", - "left": 842, - "top": 695, - "width": 7.22998046875, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "edgePosition": 2, - "text": "1" - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwMf1xBaFrI=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/CArc=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1009, - "top": 614, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwMf1xBbhRQ=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/CArc=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1003, - "top": 602, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwMf1xBcLcc=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/CArc=" - }, - "font": "Arial;13;0", - "left": 1013, - "top": 639, - "width": 19.5126953125, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "text": "1..*" - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjwMf1xBdwuY=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/Bgz8=" - }, - "visible": false, - "font": "Arial;13;0", - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjwMf1xBeAHs=", - "_parent": { - "$ref": "AAAAAAFnjwMf1hBTNhk=" - }, - "model": { - "$ref": "AAAAAAFnjwL+bQ/CArc=" - }, - "visible": false, - "font": "Arial;13;0", - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjpeueQ5KROA=" - }, - "tail": { - "$ref": "AAAAAAFnjwMf1RBJ4cA=" - }, - "lineStyle": 1, - "points": "821:696;1039:627", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjwMf1hBUIUM=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjwMf1hBVu/Y=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjwMf1xBWnKg=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnjwMf1xBXekg=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnjwMf1xBYFHU=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnjwMf1xBZIyo=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnjwMf1xBaFrI=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnjwMf1xBbhRQ=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnjwMf1xBcLcc=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnjwMf1xBdwuY=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnjwMf1xBeAHs=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnjwVLyB6qTC8=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjwVLxx6mapA=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwVLyB6rgrU=", - "_parent": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "model": { - "$ref": "AAAAAAFnjwVLxx6mapA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1058, - "top": 752, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwVLyB6suRM=", - "_parent": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "model": { - "$ref": "AAAAAAFnjwVLxx6mapA=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 1059, - "top": 737, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwVLyB6t374=", - "_parent": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "model": { - "$ref": "AAAAAAFnjwVLxx6mapA=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1057, - "top": 781, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwVLyB6uZ6o=", - "_parent": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "model": { - "$ref": "AAAAAAFnjwVLxx6nOBk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 847, - "top": 740, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwVLyB6vbMY=", - "_parent": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "model": { - "$ref": "AAAAAAFnjwVLxx6nOBk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 850, - "top": 727, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwVLyB6wNok=", - "_parent": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "model": { - "$ref": "AAAAAAFnjwVLxx6nOBk=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 841, - "top": 767, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwVLyB6xkq4=", - "_parent": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "model": { - "$ref": "AAAAAAFnjwVLyB6oih8=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1269, - "top": 764, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwVLyB6y1C4=", - "_parent": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "model": { - "$ref": "AAAAAAFnjwVLyB6oih8=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1268, - "top": 751, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwVLyB6z6OI=", - "_parent": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "model": { - "$ref": "AAAAAAFnjwVLyB6oih8=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 1272, - "top": 792, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - } - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjwVLyB60Obk=", - "_parent": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "model": { - "$ref": "AAAAAAFnjwVLxx6nOBk=" - }, - "visible": false, - "font": "Arial;13;0", - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjwVLyB61814=", - "_parent": { - "$ref": "AAAAAAFnjwVLyB6qTC8=" - }, - "model": { - "$ref": "AAAAAAFnjwVLyB6oih8=" - }, - "visible": false, - "font": "Arial;13;0", - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjvl596x0+34=" - }, - "tail": { - "$ref": "AAAAAAFnjwMf1RBJ4cA=" - }, - "lineStyle": 1, - "points": "821:760;1295:787", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjwVLyB6rgrU=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjwVLyB6suRM=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjwVLyB6t374=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnjwVLyB6uZ6o=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnjwVLyB6vbMY=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnjwVLyB6wNok=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnjwVLyB6xkq4=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnjwVLyB6y1C4=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnjwVLyB6z6OI=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnjwVLyB60Obk=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnjwVLyB61814=" - } - }, - { - "_type": "UMLClassView", - "_id": "AAAAAAFnjwW04SJa+8Q=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - }, - "subViews": [ - { - "_type": "UMLNameCompartmentView", - "_id": "AAAAAAFnjwW04SJbtE0=", - "_parent": { - "$ref": "AAAAAAFnjwW04SJa+8Q=" - }, - "model": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - }, - "subViews": [ - { - "_type": "LabelView", - "_id": "AAAAAAFnjwW04SJcRlw=", - "_parent": { - "$ref": "AAAAAAFnjwW04SJbtE0=" - }, - "visible": false, - "font": "Arial;13;0", - "top": -80, - "height": 13 - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjwW04SJdvzk=", - "_parent": { - "$ref": "AAAAAAFnjwW04SJbtE0=" - }, - "font": "Arial;13;1", - "left": 269, - "top": 519, - "width": 111.6298828125, - "height": 13, - "text": "Main_UI" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjwW04SJeE+k=", - "_parent": { - "$ref": "AAAAAAFnjwW04SJbtE0=" - }, - "visible": false, - "font": "Arial;13;0", - "top": -80, - "width": 80.9072265625, - "height": 13, - "text": "(from Model1)" - }, - { - "_type": "LabelView", - "_id": "AAAAAAFnjwW04SJfvrk=", - "_parent": { - "$ref": "AAAAAAFnjwW04SJbtE0=" - }, - "visible": false, - "font": "Arial;13;0", - "top": -80, - "height": 13, - "horizontalAlignment": 1 - } - ], - "font": "Arial;13;0", - "left": 264, - "top": 512, - "width": 121.6298828125, - "height": 25, - "stereotypeLabel": { - "$ref": "AAAAAAFnjwW04SJcRlw=" - }, - "nameLabel": { - "$ref": "AAAAAAFnjwW04SJdvzk=" - }, - "namespaceLabel": { - "$ref": "AAAAAAFnjwW04SJeE+k=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjwW04SJfvrk=" - } - }, - { - "_type": "UMLAttributeCompartmentView", - "_id": "AAAAAAFnjwW04SJgyX8=", - "_parent": { - "$ref": "AAAAAAFnjwW04SJa+8Q=" - }, - "model": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - }, - "font": "Arial;13;0", - "left": 264, - "top": 537, - "width": 121.6298828125, - "height": 10 - }, - { - "_type": "UMLOperationCompartmentView", - "_id": "AAAAAAFnjwW04SJhzW8=", - "_parent": { - "$ref": "AAAAAAFnjwW04SJa+8Q=" - }, - "model": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - }, - "subViews": [ - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjwXtFyS3JaI=", - "_parent": { - "$ref": "AAAAAAFnjwW04SJhzW8=" - }, - "model": { - "$ref": "AAAAAAFnjwXs3CST/UE=" - }, - "font": "Arial;13;0", - "left": 269, - "top": 552, - "width": 111.6298828125, - "height": 13, - "text": "+OnPressEncode()", - "horizontalAlignment": 0 - }, - { - "_type": "UMLOperationView", - "_id": "AAAAAAFnjwX4LCXFaMY=", - "_parent": { - "$ref": "AAAAAAFnjwW04SJhzW8=" - }, - "model": { - "$ref": "AAAAAAFnjwX38iWh2ms=" - }, - "font": "Arial;13;0", - "left": 269, - "top": 567, - "width": 111.6298828125, - "height": 13, - "text": "+OnPressDecode()", - "horizontalAlignment": 0 - } - ], - "font": "Arial;13;0", - "left": 264, - "top": 547, - "width": 121.6298828125, - "height": 38 - }, - { - "_type": "UMLReceptionCompartmentView", - "_id": "AAAAAAFnjwW04SJiwxA=", - "_parent": { - "$ref": "AAAAAAFnjwW04SJa+8Q=" - }, - "model": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - }, - "visible": false, - "font": "Arial;13;0", - "top": -40, - "width": 10, - "height": 10 - }, - { - "_type": "UMLTemplateParameterCompartmentView", - "_id": "AAAAAAFnjwW04SJjq+w=", - "_parent": { - "$ref": "AAAAAAFnjwW04SJa+8Q=" - }, - "model": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - }, - "visible": false, - "font": "Arial;13;0", - "top": -40, - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "containerChangeable": true, - "left": 264, - "top": 512, - "width": 121.6298828125, - "height": 73, - "nameCompartment": { - "$ref": "AAAAAAFnjwW04SJbtE0=" - }, - "attributeCompartment": { - "$ref": "AAAAAAFnjwW04SJgyX8=" - }, - "operationCompartment": { - "$ref": "AAAAAAFnjwW04SJhzW8=" - }, - "receptionCompartment": { - "$ref": "AAAAAAFnjwW04SJiwxA=" - }, - "templateParameterCompartment": { - "$ref": "AAAAAAFnjwW04SJjq+w=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnjwZeqCjnF+E=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjjQ4g=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZeqCjoZog=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjjQ4g=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 443, - "top": 487, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZeqCjp2Vc=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjjQ4g=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 438, - "top": 473, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZeqCjqfbc=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjjQ4g=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 452, - "top": 516, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZeqCjrOx4=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjkyYs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 406, - "top": 499, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZeqCjspSw=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjkyYs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 404, - "top": 486, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZeqCjtrLI=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjkyYs=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 410, - "top": 527, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZeqCjuo3g=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjlceU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 481, - "top": 475, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZeqCjvetY=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjlceU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 475, - "top": 463, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZeqCjw6aY=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjlceU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 494, - "top": 500, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - } - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjwZeqCjxhmQ=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjkyYs=" - }, - "visible": false, - "font": "Arial;13;0", - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjwZeqCjyNzE=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjnF+E=" - }, - "model": { - "$ref": "AAAAAAFnjwZeqCjlceU=" - }, - "visible": false, - "font": "Arial;13;0", - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjrFoGRBjX1I=" - }, - "tail": { - "$ref": "AAAAAAFnjwW04SJa+8Q=" - }, - "lineStyle": 1, - "points": "386:528;511:488", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjwZeqCjoZog=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjwZeqCjp2Vc=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjwZeqCjqfbc=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnjwZeqCjrOx4=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnjwZeqCjspSw=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnjwZeqCjtrLI=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnjwZeqCjuo3g=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnjwZeqCjvetY=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnjwZeqCjw6aY=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnjwZeqCjxhmQ=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnjwZeqCjyNzE=" - } - }, - { - "_type": "UMLAssociationView", - "_id": "AAAAAAFnjwZqainPw2E=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainLgbc=" - }, - "subViews": [ - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZqainQCgI=", - "_parent": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainLgbc=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 438, - "top": 595, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZqainRi/0=", - "_parent": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainLgbc=" - }, - "visible": null, - "font": "Arial;13;0", - "left": 446, - "top": 582, - "height": 13, - "alpha": 1.5707963267948966, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZqainSwXw=", - "_parent": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainLgbc=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 423, - "top": 620, - "height": 13, - "alpha": -1.5707963267948966, - "distance": 15, - "hostEdge": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "edgePosition": 1 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZqainTo1E=", - "_parent": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainMM7I=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 413, - "top": 579, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZqainUW5Q=", - "_parent": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainMM7I=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 422, - "top": 569, - "height": 13, - "alpha": 0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZqainVzcg=", - "_parent": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainMM7I=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 395, - "top": 601, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "edgePosition": 2 - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZqainW4W8=", - "_parent": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainNcZU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 464, - "top": 611, - "height": 13, - "alpha": -0.5235987755982988, - "distance": 30, - "hostEdge": { - "$ref": "AAAAAAFnjwZqainPw2E=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZqainXQ8s=", - "_parent": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainNcZU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 469, - "top": 599, - "height": 13, - "alpha": -0.7853981633974483, - "distance": 40, - "hostEdge": { - "$ref": "AAAAAAFnjwZqainPw2E=" - } - }, - { - "_type": "EdgeLabelView", - "_id": "AAAAAAFnjwZqainYDzc=", - "_parent": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainNcZU=" - }, - "visible": false, - "font": "Arial;13;0", - "left": 454, - "top": 637, - "height": 13, - "alpha": 0.5235987755982988, - "distance": 25, - "hostEdge": { - "$ref": "AAAAAAFnjwZqainPw2E=" - } - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjwZqainZlNA=", - "_parent": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainMM7I=" - }, - "visible": false, - "font": "Arial;13;0", - "width": 10, - "height": 10 - }, - { - "_type": "UMLQualifierCompartmentView", - "_id": "AAAAAAFnjwZqainae/o=", - "_parent": { - "$ref": "AAAAAAFnjwZqainPw2E=" - }, - "model": { - "$ref": "AAAAAAFnjwZqainNcZU=" - }, - "visible": false, - "font": "Arial;13;0", - "width": 10, - "height": 10 - } - ], - "font": "Arial;13;0", - "head": { - "$ref": "AAAAAAFnjwMf1RBJ4cA=" - }, - "tail": { - "$ref": "AAAAAAFnjwW04SJa+8Q=" - }, - "lineStyle": 1, - "points": "384:585;479:644", - "showVisibility": true, - "nameLabel": { - "$ref": "AAAAAAFnjwZqainQCgI=" - }, - "stereotypeLabel": { - "$ref": "AAAAAAFnjwZqainRi/0=" - }, - "propertyLabel": { - "$ref": "AAAAAAFnjwZqainSwXw=" - }, - "tailRoleNameLabel": { - "$ref": "AAAAAAFnjwZqainTo1E=" - }, - "tailPropertyLabel": { - "$ref": "AAAAAAFnjwZqainUW5Q=" - }, - "tailMultiplicityLabel": { - "$ref": "AAAAAAFnjwZqainVzcg=" - }, - "headRoleNameLabel": { - "$ref": "AAAAAAFnjwZqainW4W8=" - }, - "headPropertyLabel": { - "$ref": "AAAAAAFnjwZqainXQ8s=" - }, - "headMultiplicityLabel": { - "$ref": "AAAAAAFnjwZqainYDzc=" - }, - "tailQualifiersCompartment": { - "$ref": "AAAAAAFnjwZqainZlNA=" - }, - "headQualifiersCompartment": { - "$ref": "AAAAAAFnjwZqainae/o=" - } - }, - { - "_type": "UMLTextView", - "_id": "AAAAAAFnjweLKUXzhZw=", - "_parent": { - "$ref": "AAAAAAFnjpd2Fg5EewU=" - }, - "font": "Arial;20;0", - "left": 360, - "top": 224, - "width": 488, - "height": 88, - "text": "UI THREAD" - } - ] - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjpeueQ5Ig5Y=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "ImageSteganography", - "ownedElements": [ - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjvMkqHymdzs=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvMkqHyn3Ss=", - "_parent": { - "$ref": "AAAAAAFnjvMkqHymdzs=" - }, - "reference": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "navigable": false - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvMkqHyocGo=", - "_parent": { - "$ref": "AAAAAAFnjvMkqHymdzs=" - }, - "reference": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - } - } - }, - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjv11nOSjm3g=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjv11nOSkbAU=", - "_parent": { - "$ref": "AAAAAAFnjv11nOSjm3g=" - }, - "reference": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "navigable": false - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjv11nOSll9A=", - "_parent": { - "$ref": "AAAAAAFnjv11nOSjm3g=" - }, - "reference": { - "$ref": "AAAAAAFnjvl596xybT4=" - } - } - }, - { - "_type": "UMLDependency", - "_id": "AAAAAAFnjv9zlem1ROw=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "source": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "target": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - } - } - ], - "attributes": [ - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjpfiOg5xtDk=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "Message", - "type": "String" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjpjxqA6Bza4=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "Secret_Key", - "type": "String" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjpj2Iw6IYyA=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "Encrypted_Message", - "type": "String" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjpkUIA6PuiY=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "Image", - "type": "Bitmap" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjpkbmw6WD7Y=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "Encoded_Image", - "type": "Bitmap" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjpkfNQ6dzA0=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "Encrypted_Zip", - "type": "Byte [ ]" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjpkjEA6kgi8=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "Decoded", - "type": "Boolean" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjpkl5w6rr/M=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "Encoded", - "type": "Boolean" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjpko3A6yrEM=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "SecretKeyWrong", - "type": "Boolean" - } - ], - "operations": [ - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjstUmxWB8yM=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "ImgSteg", - "isStatic": true, - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjswprhXhRME=", - "_parent": { - "$ref": "AAAAAAFnjstUmxWB8yM=" - }, - "name": "message", - "type": "" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjsw+hxX2uAM=", - "_parent": { - "$ref": "AAAAAAFnjstUmxWB8yM=" - }, - "name": "secret_key", - "type": "" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjsxI8RYLVBA=", - "_parent": { - "$ref": "AAAAAAFnjstUmxWB8yM=" - }, - "name": "image", - "type": "" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjszkVBZ2JHA=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "ImgSteg", - "isStatic": true, - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjszkVBZ4Gnc=", - "_parent": { - "$ref": "AAAAAAFnjszkVBZ2JHA=" - }, - "name": "secret_key", - "type": "" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjszkVBZ5pfE=", - "_parent": { - "$ref": "AAAAAAFnjszkVBZ2JHA=" - }, - "name": "image", - "type": "" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjpgMeg53qk8=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "EncryptMessage", - "isStatic": true - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjpvaGQ7Mm1E=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "DecryptMessage", - "isStatic": true - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjpvgEw7TAVo=", - "_parent": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "name": "convertKeyTo128bit" - } - ] - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjp66Gg7o+EA=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "Crypto", - "ownedElements": [ - { - "_type": "UMLDependency", - "_id": "AAAAAAFnjqjKUQ/gIMw=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "name": "MakeAESKey", - "source": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "target": { - "$ref": "AAAAAAFnjqSV+Q9GZOg=" - } - }, - { - "_type": "UMLDependency", - "_id": "AAAAAAFnjqxjphA2cic=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "name": "CipherSet", - "source": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "target": { - "$ref": "AAAAAAFnjqu1tBADvMA=" - } - }, - { - "_type": "UMLDependency", - "_id": "AAAAAAFnjvhqvJV7i1E=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "source": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "target": { - "$ref": "AAAAAAFnjvggTZR5l9s=" - } - } - ], - "operations": [ - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjqAH7Q8U3pg=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "name": "EncryptMessage", - "stereotype": "", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjqGLwg8qktc=", - "_parent": { - "$ref": "AAAAAAFnjqAH7Q8U3pg=" - }, - "name": "Message", - "type": "String" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjqHxuQ8vJCE=", - "_parent": { - "$ref": "AAAAAAFnjqAH7Q8U3pg=" - }, - "name": "Secret_Key", - "type": "String" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjqJ6yg84Zfc=", - "_parent": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - }, - "name": "DecryptMessage", - "stereotype": "", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjqJ6yg85SII=", - "_parent": { - "$ref": "AAAAAAFnjqJ6yg84Zfc=" - }, - "name": "EncryptMessage", - "type": "String" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjqJ6yg86xTI=", - "_parent": { - "$ref": "AAAAAAFnjqJ6yg84Zfc=" - }, - "name": "Secret_Key", - "type": "String" - } - ] - } - ] - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjqSV+Q9GZOg=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "SecretKeySpec LIB", - "ownedElements": [ - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjqbQhA903V4=", - "_parent": { - "$ref": "AAAAAAFnjqSV+Q9GZOg=" - }, - "name": "GetAesKey", - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjqbQhQ91U4o=", - "_parent": { - "$ref": "AAAAAAFnjqbQhA903V4=" - }, - "name": "key", - "reference": { - "$ref": "AAAAAAFnjqSV+Q9GZOg=" - }, - "multiplicity": "0..1", - "defaultValue": "1" - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjqbQhQ92nmo=", - "_parent": { - "$ref": "AAAAAAFnjqbQhA903V4=" - }, - "reference": { - "$ref": "AAAAAAFnjqSV+Q9GZOg=" - } - } - } - ] - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjqu1tBADvMA=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "Cipher LIB" - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjrFoGRBhs7I=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "UI _ ENCODE", - "ownedElements": [ - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjsLb1xD0dwk=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjsLb1xD1cp4=", - "_parent": { - "$ref": "AAAAAAFnjsLb1xD0dwk=" - }, - "reference": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "multiplicity": "1" - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjsLb1xD2Uqs=", - "_parent": { - "$ref": "AAAAAAFnjsLb1xD0dwk=" - }, - "reference": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "visibility": "private", - "multiplicity": "1..*" - } - }, - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjvCm8V5WOeU=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "OnAction", - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvCm8V5Xxuo=", - "_parent": { - "$ref": "AAAAAAFnjvCm8V5WOeU=" - }, - "reference": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvCm8V5YrUg=", - "_parent": { - "$ref": "AAAAAAFnjvCm8V5WOeU=" - }, - "reference": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - } - } - }, - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjvNbWX36geQ=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvNbWX37JTU=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX36geQ=" - }, - "reference": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvNbWX38ZTk=", - "_parent": { - "$ref": "AAAAAAFnjvNbWX36geQ=" - }, - "reference": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - } - } - } - ], - "attributes": [ - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjrx6JhCPbs0=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "SELECT_PICTURE", - "visibility": "private", - "isStatic": true, - "type": "String", - "defaultValue": "100" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjryrrhCW5Ew=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "TAG", - "visibility": "private", - "isStatic": true, - "type": "String", - "defaultValue": "Encode Class" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjryywxCdAfg=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "Filepath", - "visibility": "private", - "type": "Uri" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjry14RCkcps=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "original_image", - "visibility": "private", - "type": "Bitmap" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjry65hCrjeU=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "imageSteganography, result", - "visibility": "private", - "type": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - } - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjrzBPBCyXM0=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "save", - "type": "ProgressDialog" - } - ], - "operations": [ - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjshfYhJf+3Y=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "checkAndRequestPermissions" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjsldOxLFBQU=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "OnPressENCODE" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjsljDRLkMJU=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "OnPressDECODE" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjvPNpIIeYW0=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "OnPressSAVEIMAGE" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjvS1sYRybRs=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "saveToInternalStorage", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjvUaTYW0lXs=", - "_parent": { - "$ref": "AAAAAAFnjvS1sYRybRs=" - }, - "name": "bitmapImage", - "type": "" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjvU7aYZguis=", - "_parent": { - "$ref": "AAAAAAFnjvS1sYRybRs=" - }, - "name": "name", - "type": "" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjvXXN4dL7gk=", - "_parent": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - }, - "name": "onActivityResult" - } - ] - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjsp5xhTqyNg=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "TextEncoding AsyncTask", - "ownedElements": [ - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjtLRBBwCblI=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjtLRBBwD7aY=", - "_parent": { - "$ref": "AAAAAAFnjtLRBBwCblI=" - }, - "reference": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjtLRBBwE3w4=", - "_parent": { - "$ref": "AAAAAAFnjtLRBBwCblI=" - }, - "reference": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - } - } - }, - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjvDAuV7zqL8=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvDAuV70XNc=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV7zqL8=" - }, - "reference": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvDAuV71sRA=", - "_parent": { - "$ref": "AAAAAAFnjvDAuV7zqL8=" - }, - "reference": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - } - } - }, - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjvJESmnCQio=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvJESmnDn+Q=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnCQio=" - }, - "reference": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvJESmnEmic=", - "_parent": { - "$ref": "AAAAAAFnjvJESmnCQio=" - }, - "reference": { - "$ref": "AAAAAAFnjvIVImdpVBY=" - } - } - }, - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjvavHouHptQ=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvavHouIKqw=", - "_parent": { - "$ref": "AAAAAAFnjvavHouHptQ=" - }, - "reference": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvavHouJv+U=", - "_parent": { - "$ref": "AAAAAAFnjvavHouHptQ=" - }, - "reference": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - } - } - } - ], - "attributes": [ - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjtCZhBmf+vA=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "name": "activity", - "type": "Activity" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjtEaMhnY6Vg=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "name": "maximumProgress", - "type": "int" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjtF+hxoisLU=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "name": "progressdialog", - "type": "ProgressDialog" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjtJAkRueTAc=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "name": "result", - "type": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - } - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjtPJtx2FMhQ=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "name": " callbackInterface", - "type": "TextEncodingCallback" - } - ], - "operations": [ - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjtQjTB35cEM=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "name": "TextExcoding", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjtRgmh62tks=", - "_parent": { - "$ref": "AAAAAAFnjtQjTB35cEM=" - }, - "name": "TextEncodingCallback", - "type": "" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjtSiZR7dvyQ=", - "_parent": { - "$ref": "AAAAAAFnjtQjTB35cEM=" - }, - "name": "callbackInterface", - "type": "" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjtQsvx4wQuU=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "name": "onPreExecute" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjtQyYh5nG+A=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "name": "onPostExecute", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjtV91yABFS8=", - "_parent": { - "$ref": "AAAAAAFnjtQyYh5nG+A=" - }, - "name": "textStegnography", - "type": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - } - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjtYy6SCHEy4=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "name": "onProgressUpdate", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjtYy6SCIBjI=", - "_parent": { - "$ref": "AAAAAAFnjtYy6SCHEy4=" - }, - "name": "values", - "type": "Interger..." - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjtcYwSFyY8A=", - "_parent": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - }, - "name": "doInBackground", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjtcYwSFzees=", - "_parent": { - "$ref": "AAAAAAFnjtcYwSFyY8A=" - }, - "name": "imageSteganographies", - "type": "ImageSteganography..." - } - ] - } - ] - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjtlUfiQXOJI=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "EncodeDecode", - "attributes": [ - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjtrBACSboao=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "name": "TAG", - "visibility": "private", - "isStatic": true, - "type": "", - "defaultValue": "EncodeDecode.class.getName()" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjtrR3iTSI4o=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "name": "binary", - "visibility": "private", - "type": "int[]", - "defaultValue": "{16, 8, 0};" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjtrZHSUJL48=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "name": "toShift", - "visibility": "private", - "type": "int[]", - "defaultValue": "{6, 4, 2, 0};" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjtrewCVAbJ4=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "name": "andByte", - "visibility": "private", - "type": "byte[]", - "defaultValue": "{(byte) 0xC0, 0x30, 0x0C, 0x03};" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjtrkxyV3kiQ=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "name": "END_MESSAGE_COSTANT", - "visibility": "private", - "type": "String", - "defaultValue": "\"#!@\"" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjtrrGiWuI+c=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "name": "START_MESSAGE_COSTANT", - "visibility": "private", - "type": "String", - "defaultValue": "\"@!#\"" - } - ], - "operations": [ - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjt3pDiniTF8=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "name": "Byte[] EncodeMessage", - "visibility": "private", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjt5ngCo4k1A=", - "_parent": { - "$ref": "AAAAAAFnjt3pDiniTF8=" - }, - "name": "integer_pixel_array", - "type": "int[]" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjt5xrypgLsU=", - "_parent": { - "$ref": "AAAAAAFnjt3pDiniTF8=" - }, - "name": "image_columns", - "type": "int" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjt51VCqIdOM=", - "_parent": { - "$ref": "AAAAAAFnjt3pDiniTF8=" - }, - "name": "image_rows", - "type": "int" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjt56ESqwfMM=", - "_parent": { - "$ref": "AAAAAAFnjt3pDiniTF8=" - }, - "name": "messageEncodingStatus", - "type": "MessageEncodingStatus" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjt5+oirY3tg=", - "_parent": { - "$ref": "AAAAAAFnjt3pDiniTF8=" - }, - "name": "progressHandler", - "type": "ProgressHandler" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuGzoS6xwZ8=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "name": "List encodeMessage", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjuIADi8Si04=", - "_parent": { - "$ref": "AAAAAAFnjuGzoS6xwZ8=" - }, - "name": "splitted_images", - "type": "List" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjuI6Ni9fdz0=", - "_parent": { - "$ref": "AAAAAAFnjuGzoS6xwZ8=" - }, - "name": "encrypted_message", - "type": "String " - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjuJ46y+tDVA=", - "_parent": { - "$ref": "AAAAAAFnjuGzoS6xwZ8=" - }, - "name": "progressHandler", - "type": "ProgressHandler" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuTT4jzttUs=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "name": "String dencodeMessage", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjuTT4zzu+b0=", - "_parent": { - "$ref": "AAAAAAFnjuTT4jzttUs=" - }, - "name": "encodedImages", - "type": "List" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuTd+T1BYT8=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "name": "void decodeMessage", - "visibility": "private", - "isStatic": true, - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjuTd+T1C6uQ=", - "_parent": { - "$ref": "AAAAAAFnjuTd+T1BYT8=" - }, - "name": "byte_pixel_array", - "type": "byte[]" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjuTd+j1Dgdo=", - "_parent": { - "$ref": "AAAAAAFnjuTd+T1BYT8=" - }, - "name": "image_columns", - "type": "int" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjuTd+j1EpiM=", - "_parent": { - "$ref": "AAAAAAFnjuTd+T1BYT8=" - }, - "name": "image_rows", - "type": "int" - }, - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjuTd+j1FlV8=", - "_parent": { - "$ref": "AAAAAAFnjuTd+T1BYT8=" - }, - "name": "messagedecodingStatus", - "type": "MessagedecodingStatus" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjueFOT89wKU=", - "_parent": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - }, - "name": "int numberOfPixelForMessage", - "isStatic": true, - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjufdGT+TdCw=", - "_parent": { - "$ref": "AAAAAAFnjueFOT89wKU=" - }, - "name": "message", - "type": "int" - } - ] - } - ] - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjug21kDFUhI=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "MessageDecodingStatus", - "ownedElements": [ - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnju15RksRacw=", - "_parent": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "name": "subclass", - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnju15RksSN4Y=", - "_parent": { - "$ref": "AAAAAAFnju15RksRacw=" - }, - "reference": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "navigable": false - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnju15RksT0VU=", - "_parent": { - "$ref": "AAAAAAFnju15RksRacw=" - }, - "reference": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - } - } - } - ], - "visibility": "private", - "attributes": [ - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjujW6EGGgsc=", - "_parent": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "name": "message", - "type": "String" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjujdt0G98Is=", - "_parent": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "name": "ended", - "type": "boolean" - } - ], - "operations": [ - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuj0VEHz21Y=", - "_parent": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "name": "MessageDecodingStatus" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjukkDEJDF4g=", - "_parent": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "name": "isEnded" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuk2UUJ6A2g=", - "_parent": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "name": "setEnded" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuk6LUKxmJ8=", - "_parent": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "name": " getMessage" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuk90ULorkM=", - "_parent": { - "$ref": "AAAAAAFnjug21kDFUhI=" - }, - "name": "setMessage", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjumvxUO4lvA=", - "_parent": { - "$ref": "AAAAAAFnjuk90ULorkM=" - }, - "name": "message", - "type": "" - } - ] - } - ] - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjuo7pEUx4Uw=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "MessageEncodingStatus", - "ownedElements": [ - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnju27dUuynDA=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnju27dUuzI4Q=", - "_parent": { - "$ref": "AAAAAAFnju27dUuynDA=" - }, - "reference": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "navigable": false - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnju27dUu0GAY=", - "_parent": { - "$ref": "AAAAAAFnju27dUuynDA=" - }, - "reference": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - } - } - } - ], - "visibility": "private", - "attributes": [ - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjuo7pEUyIqk=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "messageEncoded", - "type": "boolean" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjuo7pEUzoEw=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "currentMessageIndex", - "type": "int" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnju76vlH7OoU=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "byteArrayMessage", - "type": "byte[]" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnju8yNVLbOwU=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "message", - "type": "String " - } - ], - "operations": [ - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuo7pEU0tZI=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "incrementMessageIndex" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuo7pEU12YQ=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "getMessage" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuo7pEU2O5I=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "setMessage", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnju01/UpzKPE=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEU2O5I=" - }, - "name": "message", - "type": "" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuo7pEU3pds=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "isMessageEncoded" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuo7pEU4Yn4=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "setMessageEncoded", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjuo7pEU5WtI=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEU4Yn4=" - }, - "name": "messageEncoded", - "type": "boolean" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuv3F0fRkHI=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "getCurrentMessageIndex" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuv84UgIEi4=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "setCurrentMessageIndex", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjuzOeEoUS2w=", - "_parent": { - "$ref": "AAAAAAFnjuv84UgIEi4=" - }, - "name": "currentMessageIndex", - "type": "" - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuwB3kg/srI=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": " byte[] getByteArrayMessage" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjuwF2Eh2OZA=", - "_parent": { - "$ref": "AAAAAAFnjuo7pEUx4Uw=" - }, - "name": "void setByteArrayMessage" - } - ] - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjvIVImdpVBY=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "Utility" - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjvggTZR5l9s=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "Android.Utils.Base64" - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjvl596xybT4=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "TextDecoding AsyncTask", - "ownedElements": [ - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjvwuTc1ANVs=", - "_parent": { - "$ref": "AAAAAAFnjvl596xybT4=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvwuTc1Bptk=", - "_parent": { - "$ref": "AAAAAAFnjvwuTc1ANVs=" - }, - "reference": { - "$ref": "AAAAAAFnjvl596xybT4=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjvwuTc1C7Qs=", - "_parent": { - "$ref": "AAAAAAFnjvwuTc1ANVs=" - }, - "reference": { - "$ref": "AAAAAAFnjp66Gg7o+EA=" - } - } - }, - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjwB7RvOm/8g=", - "_parent": { - "$ref": "AAAAAAFnjvl596xybT4=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwB7RvOnQNo=", - "_parent": { - "$ref": "AAAAAAFnjwB7RvOm/8g=" - }, - "reference": { - "$ref": "AAAAAAFnjvl596xybT4=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwB7RvOoSvY=", - "_parent": { - "$ref": "AAAAAAFnjwB7RvOm/8g=" - }, - "reference": { - "$ref": "AAAAAAFnjtlUfiQXOJI=" - } - } - } - ], - "attributes": [ - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjvowHK4EVoM=", - "_parent": { - "$ref": "AAAAAAFnjvl596xybT4=" - }, - "name": "result", - "type": "ImageSteganography " - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjvp3Ta/UwfQ=", - "_parent": { - "$ref": "AAAAAAFnjvl596xybT4=" - }, - "name": "textDecodingCallback", - "type": "TextDecodingCallback" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjvrDjbGMPtI=", - "_parent": { - "$ref": "AAAAAAFnjvl596xybT4=" - }, - "name": "activity", - "type": "Activity " - } - ] - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjwL+bQ+/+Zc=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "UI _ DECODE", - "ownedElements": [ - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjwL+bQ/AQTQ=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwL+bQ/Bgz8=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ/AQTQ=" - }, - "reference": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "multiplicity": "1" - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwL+bQ/CArc=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ/AQTQ=" - }, - "reference": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - }, - "visibility": "private", - "multiplicity": "1..*" - } - }, - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjwL+bQ/D+ek=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "name": "OnAction", - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwL+bQ/EpLE=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ/D+ek=" - }, - "reference": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwL+bQ/FazI=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ/D+ek=" - }, - "reference": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - } - } - }, - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjwL+bQ/GHKk=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwL+bQ/HiQw=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ/GHKk=" - }, - "reference": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwL+bQ/Iq38=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ/GHKk=" - }, - "reference": { - "$ref": "AAAAAAFnjsp5xhTqyNg=" - } - } - }, - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjwVLxx6mapA=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwVLxx6nOBk=", - "_parent": { - "$ref": "AAAAAAFnjwVLxx6mapA=" - }, - "reference": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwVLyB6oih8=", - "_parent": { - "$ref": "AAAAAAFnjwVLxx6mapA=" - }, - "reference": { - "$ref": "AAAAAAFnjvl596xybT4=" - } - } - } - ], - "attributes": [ - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjwL+bQ/JZiA=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "name": "SELECT_PICTURE", - "visibility": "private", - "isStatic": true, - "type": "String", - "defaultValue": "100" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjwL+bQ/Kvas=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "name": "TAG", - "visibility": "private", - "isStatic": true, - "type": "String", - "defaultValue": "Decode Class" - }, - { - "_type": "UMLAttribute", - "_id": "AAAAAAFnjwL+bQ/NI5E=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "name": "result", - "visibility": "private", - "type": { - "$ref": "AAAAAAFnjpeueQ5Ig5Y=" - } - } - ], - "operations": [ - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjwL+bQ/PE8I=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "name": "void ImageChooser" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjwL+bQ/Ql7o=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "name": "OnPressENCODE" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjwL+bg/RQB8=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "name": "OnPressDECODE" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjwL+bg/SEdA=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "name": "onCompleteTextEncoding", - "parameters": [ - { - "_type": "UMLParameter", - "_id": "AAAAAAFnjwTMHxxEIv8=", - "_parent": { - "$ref": "AAAAAAFnjwL+bg/SEdA=" - }, - "name": "result", - "type": "ImageSteganography " - } - ] - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjwL+bg/Wxzo=", - "_parent": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - }, - "name": "onActivityResult" - } - ] - }, - { - "_type": "UMLClass", - "_id": "AAAAAAFnjwW04CJY7e8=", - "_parent": { - "$ref": "AAAAAAFnjpd2FQ5D7EM=" - }, - "name": "Main_UI", - "ownedElements": [ - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjwZeqCjjQ4g=", - "_parent": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwZeqCjkyYs=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjjQ4g=" - }, - "reference": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwZeqCjlceU=", - "_parent": { - "$ref": "AAAAAAFnjwZeqCjjQ4g=" - }, - "reference": { - "$ref": "AAAAAAFnjrFoGRBhs7I=" - } - } - }, - { - "_type": "UMLAssociation", - "_id": "AAAAAAFnjwZqainLgbc=", - "_parent": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - }, - "end1": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwZqainMM7I=", - "_parent": { - "$ref": "AAAAAAFnjwZqainLgbc=" - }, - "reference": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - } - }, - "end2": { - "_type": "UMLAssociationEnd", - "_id": "AAAAAAFnjwZqainNcZU=", - "_parent": { - "$ref": "AAAAAAFnjwZqainLgbc=" - }, - "reference": { - "$ref": "AAAAAAFnjwL+bQ+/+Zc=" - } - } - } - ], - "operations": [ - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjwXs3CST/UE=", - "_parent": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - }, - "name": "OnPressEncode" - }, - { - "_type": "UMLOperation", - "_id": "AAAAAAFnjwX38iWh2ms=", - "_parent": { - "$ref": "AAAAAAFnjwW04CJY7e8=" - }, - "name": "OnPressDecode" - } - ] - } - ] - } - ] -} \ No newline at end of file diff --git a/UML/UMLDOC.PNG b/UML/UMLDOC.PNG deleted file mode 100644 index 9a487ab54f21884410f096f9a86ad3ef096a868d..0000000000000000000000000000000000000000 Binary files a/UML/UMLDOC.PNG and /dev/null differ diff --git a/app/build.gradle b/app/build.gradle deleted file mode 100644 index 7bd537b84720a9d1364e89f7c4e91d1e4ad7638e..0000000000000000000000000000000000000000 --- a/app/build.gradle +++ /dev/null @@ -1,37 +0,0 @@ -apply plugin: 'com.android.application' - -android { - compileSdkVersion 26 - defaultConfig { - applicationId "com.ayush.steganography" - minSdkVersion 19 - targetSdkVersion 26 - versionCode 1 - versionName "1.0" - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" - - } - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - } - } - -} - -configurations.all { - resolutionStrategy { - force 'com.android.support:support-annotations:23.1.1' - } -} - -dependencies { - implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'com.android.support:appcompat-v7:26.1.0' - implementation 'com.android.support.constraint:constraint-layout:1.1.0' - testImplementation 'junit:junit:4.12' - androidTestImplementation 'com.android.support.test:runner:1.0.2' - androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' - implementation project(':ImageSteganographyLibrary') -} diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro deleted file mode 100644 index f1b424510da51fd82143bc74a0a801ae5a1e2fcd..0000000000000000000000000000000000000000 --- a/app/proguard-rules.pro +++ /dev/null @@ -1,21 +0,0 @@ -# Add project specific ProGuard rules here. -# You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile diff --git a/app/release/app-release.apk b/app/release/app-release.apk deleted file mode 100644 index f90ba849df0dadde54366d989be5a667e4ddcfe8..0000000000000000000000000000000000000000 Binary files a/app/release/app-release.apk and /dev/null differ diff --git a/app/release/output.json b/app/release/output.json deleted file mode 100644 index 18db2fcf5c96f9153aee5819de3313ee12a6781b..0000000000000000000000000000000000000000 --- a/app/release/output.json +++ /dev/null @@ -1 +0,0 @@ -[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":1},"path":"app-release.apk","properties":{"packageId":"com.ayush.steganography","split":"","minSdkVersion":"19"}}] \ No newline at end of file diff --git a/app/src/androidTest/java/com/ayush/steganography/ExampleInstrumentedTest.java b/app/src/androidTest/java/com/ayush/steganography/ExampleInstrumentedTest.java deleted file mode 100644 index 8816c4f8f0140c0b234fbc1b6e4c01ad60fe788f..0000000000000000000000000000000000000000 --- a/app/src/androidTest/java/com/ayush/steganography/ExampleInstrumentedTest.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.ayush.steganography; - -import android.content.Context; -import android.support.test.InstrumentationRegistry; -import android.support.test.runner.AndroidJUnit4; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import static org.junit.Assert.*; - -/** - * Instrumented test, which will execute on an Android device. - * - * @see Testing documentation - */ -@RunWith(AndroidJUnit4.class) -public class ExampleInstrumentedTest { - @Test - public void useAppContext() throws Exception { - // Context of the app under test. - Context appContext = InstrumentationRegistry.getTargetContext(); - - assertEquals("com.ayush.steganography", appContext.getPackageName()); - } -} diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml deleted file mode 100644 index 8a6b611461d2c675544d1e07cf3861b12fab125e..0000000000000000000000000000000000000000 --- a/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/ic_launcher-web.png b/app/src/main/ic_launcher-web.png deleted file mode 100644 index 0c69c522775b1966a53f9e29659624a0235451d0..0000000000000000000000000000000000000000 Binary files a/app/src/main/ic_launcher-web.png and /dev/null differ diff --git a/app/src/main/java/com/ayush/steganography/Decode.java b/app/src/main/java/com/ayush/steganography/Decode.java deleted file mode 100644 index ce14073ad626d6a7ecab05efb27d579efebf2dd1..0000000000000000000000000000000000000000 --- a/app/src/main/java/com/ayush/steganography/Decode.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.ayush.steganography; - -import android.content.Intent; -import android.graphics.Bitmap; -import android.net.Uri; -import android.os.Bundle; -import android.provider.MediaStore; -import android.support.v7.app.AppCompatActivity; -import android.util.Log; -import android.view.View; -import android.widget.Button; -import android.widget.EditText; -import android.widget.ImageView; -import android.widget.TextView; - -import com.ayush.imagesteganographylibrary.Text.AsyncTaskCallback.TextDecodingCallback; -import com.ayush.imagesteganographylibrary.Text.ImageSteganography; -import com.ayush.imagesteganographylibrary.Text.TextDecoding; - -import java.io.IOException; - -public class Decode extends AppCompatActivity implements TextDecodingCallback { - - private static final int SELECT_PICTURE = 100; - private static final String TAG = "Decode Class"; - //Initializing the UI components - private TextView textView; - private ImageView imageView; - private EditText message; - private EditText secret_key; - private Uri filepath; - //Bitmap - private Bitmap original_image; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_decode); - - //Instantiation of UI components - textView = findViewById(R.id.whether_decoded); - - imageView = findViewById(R.id.imageview); - - message = findViewById(R.id.message); - secret_key = findViewById(R.id.secret_key); - - Button choose_image_button = findViewById(R.id.choose_image_button); - Button decode_button = findViewById(R.id.decode_button); - - //Choose Image Button - choose_image_button.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - ImageChooser(); - } - }); - - //Decode Button - decode_button.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - if (filepath != null) { - - //Making the ImageSteganography object - ImageSteganography imageSteganography = new ImageSteganography(secret_key.getText().toString(), - original_image); - - //Making the TextDecoding object - TextDecoding textDecoding = new TextDecoding(Decode.this, Decode.this); - - //Execute Task - textDecoding.execute(imageSteganography); - } - } - }); - - - } - - private void ImageChooser() { - Intent intent = new Intent(); - intent.setType("image/*"); - intent.setAction(Intent.ACTION_GET_CONTENT); - startActivityForResult(Intent.createChooser(intent, "Select Picture"), SELECT_PICTURE); - } - - @Override - protected void onActivityResult(int requestCode, int resultCode, Intent data) { - super.onActivityResult(requestCode, resultCode, data); - - //Image set to imageView - if (requestCode == SELECT_PICTURE && resultCode == RESULT_OK && data != null && data.getData() != null) { - - filepath = data.getData(); - try { - original_image = MediaStore.Images.Media.getBitmap(getContentResolver(), filepath); - - imageView.setImageBitmap(original_image); - } catch (IOException e) { - Log.d(TAG, "Error : " + e); - } - } - - } - - @Override - public void onStartTextEncoding() { - //Whatever you want to do by the start of textDecoding - } - - @Override - public void onCompleteTextEncoding(ImageSteganography result) { - - //By the end of textDecoding - - if (result != null) { - if (!result.isDecoded()) - textView.setText("No message found"); - else { - if (!result.isSecretKeyWrong()) { - textView.setText("Decoded"); - message.setText("" + result.getMessage()); - } else { - textView.setText("Wrong secret key"); - } - } - } else { - textView.setText("Select Image First"); - } - - - } -} diff --git a/app/src/main/java/com/ayush/steganography/Encode.java b/app/src/main/java/com/ayush/steganography/Encode.java deleted file mode 100644 index a04b563aba23bb4483b7b12a2317f7336c141052..0000000000000000000000000000000000000000 --- a/app/src/main/java/com/ayush/steganography/Encode.java +++ /dev/null @@ -1,209 +0,0 @@ -package com.ayush.steganography; - -import android.Manifest; -import android.app.ProgressDialog; -import android.content.Intent; -import android.content.pm.PackageManager; -import android.graphics.Bitmap; -import android.net.Uri; -import android.os.Bundle; -import android.os.Environment; -import android.provider.MediaStore; -import android.support.v4.app.ActivityCompat; -import android.support.v4.content.ContextCompat; -import android.support.v7.app.AppCompatActivity; -import android.util.Log; -import android.view.View; -import android.widget.Button; -import android.widget.EditText; -import android.widget.ImageView; -import android.widget.TextView; - -import com.ayush.imagesteganographylibrary.Text.AsyncTaskCallback.TextEncodingCallback; -import com.ayush.imagesteganographylibrary.Text.ImageSteganography; -import com.ayush.imagesteganographylibrary.Text.TextEncoding; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.OutputStream; -import java.util.ArrayList; -import java.util.List; - -public class Encode extends AppCompatActivity implements TextEncodingCallback { - - private static final int SELECT_PICTURE = 100; - private static final String TAG = "Encode Class"; - //Created variables for UI - private TextView whether_encoded; - private ImageView imageView; - private EditText message; - private EditText secret_key; - //Objects needed for encoding - private TextEncoding textEncoding; - private ImageSteganography imageSteganography; - private ProgressDialog save; - private Uri filepath; - //Bitmaps - private Bitmap original_image; - private Bitmap encoded_image; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_encode); - - //initialized the UI components - - whether_encoded = findViewById(R.id.whether_encoded); - - imageView = findViewById(R.id.imageview); - - message = findViewById(R.id.message); - secret_key = findViewById(R.id.secret_key); - - Button choose_image_button = findViewById(R.id.choose_image_button); - Button encode_button = findViewById(R.id.encode_button); - Button save_image_button = findViewById(R.id.save_image_button); - - checkAndRequestPermissions(); - - - //Choose image button - choose_image_button.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - ImageChooser(); - } - }); - - //Encode Button - encode_button.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - whether_encoded.setText(""); - if (filepath != null) { - if (message.getText() != null) { - - //ImageSteganography Object instantiation - imageSteganography = new ImageSteganography(message.getText().toString(), - secret_key.getText().toString(), - original_image); - //TextEncoding object Instantiation - textEncoding = new TextEncoding(Encode.this, Encode.this); - //Executing the encoding - textEncoding.execute(imageSteganography); - } - } - } - }); - - //Save image button - save_image_button.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - final Bitmap imgToSave = encoded_image; - Thread PerformEncoding = new Thread(new Runnable() { - @Override - public void run() { - saveToInternalStorage(imgToSave); - } - }); - save = new ProgressDialog(Encode.this); - save.setMessage("Saving, Please Wait..."); - save.setTitle("Saving Image"); - save.setIndeterminate(false); - save.setCancelable(false); - save.show(); - PerformEncoding.start(); - } - }); - - } - - private void ImageChooser() { - Intent intent = new Intent(); - intent.setType("image/*"); - intent.setAction(Intent.ACTION_GET_CONTENT); - startActivityForResult(Intent.createChooser(intent, "Select Picture"), SELECT_PICTURE); - } - - @Override - protected void onActivityResult(int requestCode, int resultCode, Intent data) { - super.onActivityResult(requestCode, resultCode, data); - - //Image set to imageView - if (requestCode == SELECT_PICTURE && resultCode == RESULT_OK && data != null && data.getData() != null) { - - filepath = data.getData(); - try { - original_image = MediaStore.Images.Media.getBitmap(getContentResolver(), filepath); - - imageView.setImageBitmap(original_image); - } catch (IOException e) { - Log.d(TAG, "Error : " + e); - } - } - - } - - // Override method of TextEncodingCallback - - @Override - public void onStartTextEncoding() { - //Whatever you want to do at the start of text encoding - } - - @Override - public void onCompleteTextEncoding(ImageSteganography result) { - - //By the end of textEncoding - - if (result != null && result.isEncoded()) { - encoded_image = result.getEncoded_image(); - whether_encoded.setText("Encoded"); - imageView.setImageBitmap(encoded_image); - } - } - - private void saveToInternalStorage(Bitmap bitmapImage) { - OutputStream fOut; - File file = new File(Environment.getExternalStoragePublicDirectory( - Environment.DIRECTORY_DOWNLOADS), "Encoded" + ".PNG"); // the File to save , - try { - fOut = new FileOutputStream(file); - bitmapImage.compress(Bitmap.CompressFormat.PNG, 100, fOut); // saving the Bitmap to a file - fOut.flush(); // Not really required - fOut.close(); // do not forget to close the stream - whether_encoded.post(new Runnable() { - @Override - public void run() { - save.dismiss(); - } - }); - } catch (FileNotFoundException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - private void checkAndRequestPermissions() { - int permissionWriteStorage = ContextCompat.checkSelfPermission(this, - Manifest.permission.WRITE_EXTERNAL_STORAGE); - int ReadPermission = ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE); - List listPermissionsNeeded = new ArrayList<>(); - if (ReadPermission != PackageManager.PERMISSION_GRANTED) { - listPermissionsNeeded.add(Manifest.permission.READ_EXTERNAL_STORAGE); - } - if (permissionWriteStorage != PackageManager.PERMISSION_GRANTED) { - listPermissionsNeeded.add(Manifest.permission.WRITE_EXTERNAL_STORAGE); - } - if (!listPermissionsNeeded.isEmpty()) { - ActivityCompat.requestPermissions(this, listPermissionsNeeded.toArray(new String[0]), 1); - } - } - - -} diff --git a/app/src/main/java/com/ayush/steganography/MainActivity.java b/app/src/main/java/com/ayush/steganography/MainActivity.java deleted file mode 100644 index bbc984d30c6d0e8d0e504c17701b9fca79f54139..0000000000000000000000000000000000000000 --- a/app/src/main/java/com/ayush/steganography/MainActivity.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.ayush.steganography; - -import android.content.Intent; -import android.os.Bundle; -import android.support.v7.app.AppCompatActivity; -import android.view.View; -import android.widget.Button; - -public class MainActivity extends AppCompatActivity { - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_main); - - Button encode = findViewById(R.id.encode_button); - Button decode = findViewById(R.id.decode_button); - - encode.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - startActivity(new Intent(getApplicationContext(), Encode.class)); - } - }); - - decode.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - startActivity(new Intent(getApplicationContext(), Decode.class)); - } - }); - - } - -} diff --git a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml deleted file mode 100644 index c7bd21dbd86990cde81fea8abd3bf904b4546749..0000000000000000000000000000000000000000 --- a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - diff --git a/app/src/main/res/drawable/ic_launcher_background.xml b/app/src/main/res/drawable/ic_launcher_background.xml deleted file mode 100644 index 01f0af0add58c1ae4e6d5b296cce73d9f9c99df1..0000000000000000000000000000000000000000 --- a/app/src/main/res/drawable/ic_launcher_background.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/activity_decode.xml b/app/src/main/res/layout/activity_decode.xml deleted file mode 100644 index ee7c4627533b7afaa9d3b3dafd1c0b4a1133d5b8..0000000000000000000000000000000000000000 --- a/app/src/main/res/layout/activity_decode.xml +++ /dev/null @@ -1,93 +0,0 @@ - - - - - -