Thread: Fixing Cache Directory

Results 1 to 5 of 5
  1. #1 Fixing Cache Directory 
    Registered Member
    Join Date
    Jun 2012
    Posts
    4
    Thanks given
    0
    Thanks received
    0
    Rep Power
    0
    Code:
    // Decompiled by Jad v1.5.8f. Copyright 2001 Pavel Kouznetsov.
    // Jad home page: http://www.kpdus.com/jad.html
    // Decompiler options: packimports(3)
    // Source File Name:   signlink.java
    
    
    
    import java.applet.Applet;
    import java.io.DataInputStream;
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.RandomAccessFile;
    import java.net.InetAddress;
    import java.net.Socket;
    import java.net.URL;
    
    import javax.sound.midi.MidiChannel;
    import javax.sound.midi.MidiSystem;
    import javax.sound.midi.MidiUnavailableException;
    import javax.sound.midi.Sequence;
    import javax.sound.midi.Sequencer;
    import javax.sound.midi.ShortMessage;
    import javax.sound.midi.Synthesizer;
    import javax.sound.sampled.AudioFormat;
    import javax.sound.sampled.AudioInputStream;
    import javax.sound.sampled.AudioSystem;
    import javax.sound.sampled.DataLine;
    import javax.sound.sampled.FloatControl;
    import javax.sound.sampled.LineUnavailableException;
    import javax.sound.sampled.SourceDataLine;
    import javax.sound.sampled.UnsupportedAudioFileException;
    
    public final class signlink implements Runnable {
    
    	public static void startpriv(InetAddress inetaddress) {
    		threadliveid = (int) (Math.random() * 99999999D);
    		if (active) {
    			try {
    				Thread.sleep(500L);
    			} catch (Exception _ex) {
    			}
    			active = false;
    		}
    		socketreq = 0;
    		threadreq = null;
    		savereq = null;
    		urlreq = null;
    		socketip = inetaddress;
    		Thread thread = new Thread(new signlink());
    		thread.setDaemon(true);
    		thread.start();
    		while (!active)
    			try {
    				Thread.sleep(50L);
    			} catch (Exception _ex) {
    			}
    	}
    
    	enum Position {
    		LEFT, RIGHT, NORMAL
    	};
    
    	private final int EXTERNAL_BUFFER_SIZE = 524288; // 128Kb
    	private Position curPosition;
    
    	public void run() {
    		active = true;
    		String s = findcachedir();
    		try {
    			cache_dat = new RandomAccessFile(s + "ruse.dat", "rw");
    			for (int j = 0; j < 7; j++) {
    				cache_idx[j] = new RandomAccessFile(s + "ruse.idx" + j, "rw");
    			}
    		} catch (Exception exception) {
    			exception.printStackTrace();
    		}
    		for (int i = threadliveid; threadliveid == i;) {
    			if (socketreq != 0) {
    				try {
    					socket = new Socket(socketip, socketreq);
    				} catch (Exception _ex) {
    					socket = null;
    				}
    				socketreq = 0;
    			} else if (threadreq != null) {
    				Thread thread = new Thread(threadreq);
    				thread.setDaemon(true);
    				thread.start();
    				thread.setPriority(threadreqpri);
    				threadreq = null;
    			} else if (savereq != null) {
    				if (savebuf != null)
    					try {
    						FileOutputStream fileoutputstream = new FileOutputStream(s + savereq);
    						fileoutputstream.write(savebuf, 0, savelen);
    						fileoutputstream.close();
    					} catch (Exception _ex) {
    					}
    				if (waveplay) {
    					String wave = s + savereq;
    					waveplay = false;
    					AudioInputStream audioInputStream = null;
    					try {
    						audioInputStream = AudioSystem.getAudioInputStream(new File(wave));
    					} catch (UnsupportedAudioFileException e1) {
    						e1.printStackTrace();
    						return;
    					} catch (IOException e1) {
    						e1.printStackTrace();
    						return;
    					}
    					AudioFormat format = audioInputStream.getFormat();
    					SourceDataLine auline = null;
    					DataLine.Info info = new DataLine.Info(SourceDataLine.class, format);
    					try {
    						auline = (SourceDataLine) AudioSystem.getLine(info);
    						auline.open(format);
    					} catch (LineUnavailableException e) {
    						e.printStackTrace();
    						return;
    					} catch (Exception e) {
    						e.printStackTrace();
    						return;
    					}
    					if (auline.isControlSupported(FloatControl.Type.PAN)) {
    						FloatControl pan = (FloatControl) auline.getControl(FloatControl.Type.PAN);
    						if (curPosition == Position.RIGHT)
    							pan.setValue(1.0f);
    						else if (curPosition == Position.LEFT)
    							pan.setValue(-1.0f);
    					}
    					auline.start();
    					int nBytesRead = 0;
    					byte[] abData = new byte[EXTERNAL_BUFFER_SIZE];
    					try {
    						while (nBytesRead != -1) {
    							nBytesRead = audioInputStream.read(abData, 0, abData.length);
    							if (nBytesRead >= 0)
    								auline.write(abData, 0, nBytesRead);
    						}
    					} catch (IOException e) {
    						e.printStackTrace();
    						return;
    					} finally {
    						auline.drain();
    						auline.close();
    					}
    				}
    				if (midiplay) {
    					midi = s + savereq;
    					try {
    						if (music != null) {
    							music.stop();
    							music.close();
    						}
    						playMidi(midi);
    					} catch (Exception ex) {
    						ex.printStackTrace();
    					}
    					midiplay = false;
    				}
    				savereq = null;
    			} else if (urlreq != null) {
    				try {
    					System.out.println("urlstream");
    					urlstream = new DataInputStream((new URL(mainapp.getCodeBase(), urlreq)).openStream());
    				} catch (Exception _ex) {
    					urlstream = null;
    				}
    				urlreq = null;
    			}
    			try {
    				Thread.sleep(50L);
    			} catch (Exception _ex) {
    			}
    		}
    
    	}
    
    	/**
    	 * Plays the specified midi sequence.
    	 * 
    	 * @param location
    	 */
    	private void playMidi(String location) {
    		music = null;
    		synthesizer = null;
    		sequence = null;
    		File midiFile = new File(location);
    		try {
    			sequence = MidiSystem.getSequence(midiFile);
    			music = MidiSystem.getSequencer();
    			music.open();
    			music.setSequence(sequence);
    		} catch (Exception e) {
    			System.err.println("Problem loading MIDI file.");
    			e.printStackTrace();
    			return;
    		}
    		if (music instanceof Synthesizer) {
    			synthesizer = (Synthesizer) music;
    		} else {
    			try {
    				synthesizer = MidiSystem.getSynthesizer();
    				synthesizer.open();
    				if (synthesizer.getDefaultSoundbank() == null) {
    					music.getTransmitter().setReceiver(MidiSystem.getReceiver());
    				} else {
    					music.getTransmitter().setReceiver(synthesizer.getReceiver());
    				}
    			} catch (Exception e) {
    				e.printStackTrace();
    				return;
    			}
    		}
    		music.setLoopCount(Sequencer.LOOP_CONTINUOUSLY);
    		music.start();
    	}
    
    	/**
    	 * Sets the volume for the midi synthesizer.
    	 * 
    	 * @param value
    	 */
    	public static void setVolume(int value) throws MidiUnavailableException {
    		int CHANGE_VOLUME = 7;
    		midiVolume = value;
    		synthesizer = MidiSystem.getSynthesizer();
    		if (synthesizer.getDefaultSoundbank() == null) {
    			try {
    				ShortMessage volumeMessage = new ShortMessage();
    				for (int i = 0; i < 16; i++) {
    					volumeMessage.setMessage(ShortMessage.CONTROL_CHANGE, i, CHANGE_VOLUME, midiVolume);
    					volumeMessage.setMessage(ShortMessage.CONTROL_CHANGE, i, 39, midiVolume);
    					MidiSystem.getReceiver().send(volumeMessage, -1);
    				}
    			} catch (Exception e) {
    				e.printStackTrace();
    			}
    		} else {
    			MidiChannel[] channels = synthesizer.getChannels();
    			for (int c = 0; channels != null && c < channels.length; c++) {
    				channels[c].controlChange(CHANGE_VOLUME, midiVolume);
    				channels[c].controlChange(39, midiVolume);
    			}
    		}
    	}
    
    	public static Sequencer music = null;
    	public static Sequence sequence = null;
    	public static Synthesizer synthesizer;
    
    	public static String findcachedir() {
    		String cacheLoc = System.getProperty("user.home") + "/Z/" + "cache/";
    		File cacheDir = new File(cacheLoc);
    		if(!cacheDir.exists()) {
    			cacheDir.mkdir();
    		}
    		System.out.println(cacheDir);
    		System.out.println(cacheLoc);
    		return cacheLoc;
    	}
    	
    	public static synchronized Socket opensocket(int i) throws IOException {
    		for (socketreq = i; socketreq != 0;)
    			try {
    				Thread.sleep(50L);
    			} catch (Exception _ex) {
    			}
    
    		if (socket == null)
    			throw new IOException("could not open socket");
    		else
    			return socket;
    	}
    
    	public static synchronized DataInputStream openurl(String s) throws IOException {
    		for (urlreq = s; urlreq != null;)
    			try {
    				Thread.sleep(50L);
    			} catch (Exception _ex) {
    			}
    
    		if (urlstream == null)
    			throw new IOException("could not open: " + s);
    		else
    			return urlstream;
    	}
    
    	public static synchronized void startthread(Runnable runnable, int i) {
    		threadreqpri = i;
    		threadreq = runnable;
    	}
    
    	public static final synchronized boolean wavesave(byte abyte0[], int i) {
    		if (i > 0x1e8480) {
    			return false;
    		}
    		if (savereq != null) {
    			return false;
    		} else {
    			wavepos = (wavepos + 1) % 5;
    			savelen = i;
    			savebuf = abyte0;
    			waveplay = true;
    			savereq = "sound" + wavepos + ".wav";
    			return true;
    		}
    	}
    
    	public static final synchronized boolean wavereplay() {
    		if (savereq != null) {
    			return false;
    		} else {
    			savebuf = null;
    			waveplay = true;
    			savereq = "sound" + wavepos + ".wav";
    			return true;
    		}
    	}
    
    	public static final synchronized void midisave(byte abyte0[], int i) {
    		if (i > 0x1e8480) {
    			return;
    		}
    		if (savereq != null) {
    			return;
    		} else {
    			midipos = (midipos + 1) % 5;
    			savelen = i;
    			savebuf = abyte0;
    			midiplay = true;
    			savereq = "jingle" + midipos + ".mid";
    			return;
    		}
    	}
    
    	private signlink() {
    	}
    
    	public static RandomAccessFile cache_dat = null;
    	public static final RandomAccessFile[] cache_idx = new RandomAccessFile[7];
    	public static Applet mainapp = null;
    	private static boolean active;
    	private static int threadliveid;
    	private static InetAddress socketip;
    	private static int socketreq;
    	private static Socket socket = null;
    	private static int threadreqpri = 1;
    	private static Runnable threadreq = null;
    	private static String urlreq = null;
    	private static DataInputStream urlstream = null;
    	private static int savelen;
    	private static String savereq = null;
    	private static byte[] savebuf = null;
    	private static boolean midiplay;
    	private static int midipos;
    	public static String midi = null;
    	public static int midiVolume;
    	public static int fadeMidi;
    	private static boolean waveplay;
    	private static int wavepos;
    	public static int wavevol;
    
    }



    Problem is "File cacheDir = new File(cacheLoc);"
    which i think means they are equal but the cacheDir is missing 1"/" at end and other one isn't.
    I have tried putting 1 another "1" at cacheLoc but it does not add to the cacheDir
    Reply With Quote  
     

  2. #2  
    Member

    Join Date
    Nov 2008
    Age
    24
    Posts
    4,861
    Thanks given
    774
    Thanks received
    341
    Rep Power
    0
    the cache loads from

    C:\Users\James\RuseCache\*
    Replace findcache dir with

    Code:
    	public static String findcachedir() {
    		String cacheLoc = System.getProperty("user.home") + "/Z/"; //"./cache/";
    		File cacheDir = new File(cacheLoc);
    		if(!cacheDir.exists()) {
    			cacheDir.mkdir();
    		}
    		return cacheLoc;
    	}
    And change the path to the cache on your pc to

    C:\Users\*USER*\Z
    there's no need for the the folder 'cache', just put all the idx files in the Z folder
    Reply With Quote  
     

  3. #3  
    Registered Member
    Join Date
    Jun 2012
    Posts
    4
    Thanks given
    0
    Thanks received
    0
    Rep Power
    0


    It still won't fix the same problem of cacheDir missing 1 / remains
    Reply With Quote  
     

  4. #4  
    Banned
    Join Date
    Dec 2015
    Posts
    176
    Thanks given
    31
    Thanks received
    22
    Rep Power
    0
    Google.com
    Reply With Quote  
     

  5. #5  
    Registered Member
    Join Date
    Jun 2012
    Posts
    4
    Thanks given
    0
    Thanks received
    0
    Rep Power
    0
    I did google and try to figure out myself by adding slash. Checking other files in case but i couldn't find a way so that is why i posted for help.
    Reply With Quote  
     


Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Similar Threads

  1. Fixed Cache[SlashScape]
    By NICKname in forum Downloads
    Replies: 33
    Last Post: 12-30-2010, 09:07 AM
  2. Cache Directory Problem
    By Proffessor Oak in forum Help
    Replies: 0
    Last Post: 08-30-2010, 03:45 AM
  3. Webclient Cache Directory
    By edgevillepkz in forum Help
    Replies: 0
    Last Post: 08-08-2010, 11:48 PM
  4. Release #333 (Fixed cache!)
    By Zahhak in forum Downloads
    Replies: 7
    Last Post: 07-08-2009, 08:35 PM
  5. fixing cache on bluurs?
    By Balla in forum Help
    Replies: 3
    Last Post: 04-30-2009, 03:37 AM
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •