JoinGroup.java :  » Chat-Messenger » dchatter » eece261 » dChatter » Android Open Source

Android Open Source » Chat Messenger » dchatter 
dchatter » eece261 » dChatter » JoinGroup.java
package eece261.dChatter;

import java.net.InetAddress;
import java.net.UnknownHostException;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class JoinGroup extends Activity {
  
  // For logging.
  private static final String TAG = "JoinGroup";
  
  private static final String default_ip_address_ = "228.6.8.7";
  private static final int    default_port_       = 6759;
  
  private String        username_;
  
  private EditText          edit_ip_;
  private EditText          edit_port_;
  
  @Override
    public void onCreate(Bundle savedInstanceState) {
    
    Log.d(TAG, "JoinGroup created.");
        
    super.onCreate(savedInstanceState);
        setContentView(R.layout.joingroup);
        
        edit_ip_    = (EditText)findViewById(R.id.IPEdit);    
        edit_port_   = (EditText)findViewById(R.id.PortEdit);
        
        edit_ip_.setText(default_ip_address_);
        edit_port_.setText(String.valueOf(default_port_));
        
        final Button joinButton = (Button)findViewById(R.id.JoinGroupButton);
        joinButton.setOnClickListener(new View.OnClickListener() {
          
            public void onClick(View v) {
              
              String ip = edit_ip_.getText().toString();
              String port = edit_port_.getText().toString();
              
              if(validIPPort(ip,port))
              {
                InetAddress ip_inet = null;
                try {
                  ip_inet = InetAddress.getByName(ip);
                } catch (UnknownHostException e) {
                  e.printStackTrace();
                }

                if (ip_inet != null && ip_inet.isMulticastAddress())
                {
                  int port_int = Integer.parseInt(port);
                  Intent intent = new Intent(JoinGroup.this, ChatWindow.class);
                  intent.putExtra("ip", ip);
                  intent.putExtra("port", port_int);
                  intent.putExtra("username", username_);
                  startActivity(intent);
                }
              }
            }
        });
        
        Bundle extras = getIntent().getExtras();
        if (extras !=null)
          username_ = extras.getString("username");
  }
  
    @Override
    protected void onStart() {
      super.onStart();
      
    }
    
  public boolean validIPPort(String IP, String Port)
  {
    int temp = Integer.parseInt(Port);
    //if(temp<49152 || temp>65535)
    if(temp<0 || temp>65535)
    {
      return false;
    }
    int count = 1;
    String t1 = "";
    char t9 = ' ';
    for(int ii=0;ii<IP.length();ii++)
    {
      t9 = IP.charAt(ii);
      int t8 = (int)(t9-'0');
      
      if((t8<10 && t8 >0) || t9 == '.')
      {
        if(t9 != '.')
        {
          t1 = t1 + t9;
        }
        else
        {
          count = count + 1;
          if(count>4)
          {return false;
          }
          int kk = Integer.parseInt(t1);
          if(kk<0 || kk>255)
          {
            return false;
          }
          t1 = "";
        }
      }
      else
      {
        return false;
      }
    }
    int kk = Integer.parseInt(t1);
    if(kk<0 || kk>255)
    {
      return false;
    }
    if(count==4)
    {
      return true;
    }

    return false;
  }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.