Posts

Showing posts with the label Java

VMware Virtual Machine Operations

VMware Virtual Machine Operations For these operations I used VI java as library: SourceCode: package com.shashwat.vijava;   import java.net.URL; import java.util.Scanner; import com.vmware.vim25.mo.Folder; import com.vmware.vim25.mo.InventoryNavigator; import com.vmware.vim25.mo.ServiceInstance; import com.vmware.vim25.mo.Task; import com.vmware.vim25.mo.VirtualMachine; public class VMPowerOps { @SuppressWarnings("deprecation") public static void main(String[] args) throws Exception { String address, userName, password, vmName, operation; Scanner scanner = new Scanner(System.in); System.out.println("Enter vCenter or ESXi IP address ?"); address = scanner.nextLine(); System.out.println("Enter username of " + address + " ?"); userName = scanner.nextLine(); System.out.println("Enter password of " + addr...

Producer - Consumer Problem Java

Producer - Consumer Problem implementation: IntegerBuffer.java public class IntegerBuffer { private int index; private int[] buffer; private final int SIZE = 2; public IntegerBuffer() { this.buffer = new int[SIZE]; } public synchronized void add(int number) { while (index == buffer.length - 1) { try { wait(); System.out.println("IntegerBuffer.add() waiting"); } catch (InterruptedException e) { } } buffer[index++] = number; notifyAll(); } public synchronized int remove() { while (index == 0) { try { wait(); System.out.println("IntegerBuffer.remove() waiting"); } catch (InterruptedException e) { } } in...

Implemention of LRU Cache

Source: import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentLinkedDeque; /** * Class LRU Cache * @author Shashwat * @param <Key> * @param <Value> */ public class LRUCache<Key, Value> { private final int MAX_SIZE; private ConcurrentHashMap<Key, Value> map; private ConcurrentLinkedDeque<Key> queue; public LRUCache(final int maxSize) { this.MAX_SIZE = maxSize; this.map = new ConcurrentHashMap<Key, Value>(this.MAX_SIZE); this.queue = new ConcurrentLinkedDeque<Key>(); } public Value get(Key key) { return this.map.get(key); } public void put(final Key key, final Value value) { if (this.map.containsKey(key)) { this.queue.remove(key); } while (this.queue.size() >= this.MAX_SIZE) { Key o...

Java Puzzle

Question: class Puzzle { public static void main(String[] args) { System.out.print(12345 + 5432l); System.out.print(" "); System.out.print(01234 + 43210); } } Output : 17777 43878 In lines: System.out.print(12345 + 5432l); 5432l ---- Its last character is L -- means long System.out.print(01234 + 43210); 01234 ---- Here starting digit is 0 which means octal Fixed version : class Puzzle { public static void main(String[] args) { System.out.print(12345 + 5432L); // make the last character L System.out.print(" "); System.out.print(1234 + 43210); // drop the 0 } } Output : 66666 44444

Print two dimensional array in spiral order

Source code: package com.in2soft.test; public class PrintSpiralTest { /** * @since Dec 26, 2015 * @author Shashwat.Anand */ public static void main(String[] args) { int[][] twoDArry = { { 2, 4, 6, 8 }, { 5, 9, 12, 16 }, { 2, 11, 5, 9 }, { 3, 2, 1, 8 } }; printInSpiralOrder(twoDArry, twoDArry[0].length, twoDArry.length); } private static void printInSpiralOrder(int[][] twoDArry, int m, int n) { int t = 0, b = m - 1, l = 0, r = n - 1; int dir = 0; // 0 = -> ; 0 = bottom; 0 = <-; 0 = top while (t <= b && l <= r) { if (dir == 0) { for (int i = l; i <= r; i++) { System.out.println(twoDArry[t][i]); } t++; dir = 1; } else if (dir == 1) { for (int i = t; i <= b; i++) { System.out.println(twoDArry[i][r]); } r--; dir = 2; } else if (dir == 2) { for (int i = r; i >= l; i--) { System.out.println(twoDArry...

Find two strings are anagram in Java ?

Source Code : import java.util.Arrays; /** * Anagram.java * @author Shashwat Anand */ public class Anagram { public static void main(String[] args) { System.out.println(testAnagram("Shashwat", "Shawatsh")); System.out.println(testAnagram("Shashwat", "Shawatwh")); System.out.println(testAnagramWithInbuiltMethods("Shashwat", "Shawatsh")); System.out.println(testAnagramWithInbuiltMethods("Shashwat", "Shawatwh")); } private static boolean testAnagramWithInbuiltMethods(String str1, String str2) { char[] charArray1 = str1.toCharArray(); char[] charArray2 = str2.toCharArray(); Arrays.sort(charArray1); Arrays.sort(charArray2); return Arrays.equals(charArray1, charArray2); } private static boolean testAnagram(String str1, String str2) { ...

How to add Xtext DSL editor in Multi-Page Editor

To add your Xtext Dsl Editor to Multi-Page Editor Getting the instance of XText editor MyDslActivator activator = MyDslActivator.getInstance(); final Injector injector = activator.getInjector("org.shashwat.xtext.mydsl.MyDsl"); XtextEditor xtextEditor = injector.getInstance(XtextEditor.class); Remember to have editor input instance of IFileEditorInput. XtextEditor uses XtextDocumentProvider which extends FileDocumentProvider FileEditorInput fileEditorInput = new FileEditorInput(file); // Here file is instance of IFile int index = addPage(xtextEditor, fileEditorInput);

Creating password protected ZIP file using TrueZip

try { final TConfig config = TConfig.get(); // Request encryption in archive files. config.setOutputPreferences(config.getOutputPreferences() .or(BitField.of(FsOutputOption.ENCRYPT))); // Configure archive detector with custom key management for ZIP files. config.setArchiveDetector(newArchiveDetector1("zip", "password")); // Setup file paths. TFile src = new TFile("file1"); TFile dst = new TFile("file2"); if (dst.isArchive() || dst.isDirectory()) dst = new TFile(dst, src.getName()); // Recursive copy. src.cp_rp(dst); } finally { // Commit changes. TVFS.umount(); }