Package fr.imag.adele.apam

Examples of fr.imag.adele.apam.Instance


    long duree ;
    long deb ;
    int nb = 1000;
//    int nbInst = 0 ;
   
    Instance test ;
    String s ;
   
    deb = System.nanoTime();   
    test = CST.componentBroker.getInstService(constraintDep) ;
    fin = System.nanoTime();
    System.out.println(constraintDep.getName());
    duree = (fin - deb) ;
    System.out.println("Time for first resolution : deploying and instantiating. : " + duree/1000000 + " milli secondes");

    deb = System.nanoTime();
    for (int i = 0; i < nb; i++) {
      test = CST.componentBroker.getInstService(constraintDep) ;
      test.setProperty("debit", 2) ;
      s= constraintDep.getName() ;
//      System.out.println(s);
    }
    fin = System.nanoTime();
    duree = (fin - deb) ;
View Full Code Here


    System.out.println("testing a root createCompositeType by name existing in ASM. will call S2Final.");
    CompositeType appliTest00 = apam.createCompositeType(null,  "Test00", null, "S1toS2Final", null,null);
    assertTrue(appliTest00!= null);

    System.out.println("testing create instance root");
    Instance a = appliTest00.createInstance(null /* composite */, null/* properties */);
    assertTrue(a!= null);

    System.out.println("testing call to S1toS2Final");
    S1 s01 = (S1) a.getServiceObject();
    s01.callS1("createAppli by API by name. Should call S2Final.");

    System.out.println("=========== passed testCreateCompoRootS1toS2Final\n\n");

    System.out.println("=========== start nested composite instance by API");
    System.out.println("Testing the manual creation of a composite instance inside another composite instance of same type");
    System.out.println("Weird but should work.");
    Instance test00_instance0 = appliTest00.createInstance((Composite) a /* composite */, null/* properties */);
    assertTrue (test00_instance0 != null);
    assertTrue (((Composite)a).containsInst(test00_instance0)) ;
    System.out.println("composite in composite same type !! " + test00_instance0 );

    System.out.println("=========== passed nested composite instance by API\n\n");
View Full Code Here

    // The system will look for an atomic implementations of "S1" as the main implementation
    CompositeType appli3 = apam.createCompositeType(null, "TestS1Bis", null,  "S1", null /* models */, null /* properties */);
    assertTrue (appli3 != null) ;

    // Create an instance of that composite type
    Instance inst = appli3.createInstance(null /* composite */, null/* properties */);
    assertTrue (inst != null );

    System.out.println("=========== passed testCreateCompoBySpec\n\n");
  }
View Full Code Here

    props.put("testEnumere", "v1");

    CompositeType appliTestAttr = apam.createCompositeType(null,  "TestInitAttr", null, "TestAttr", null, props);
    assertTrue(appliTestAttr != null);

    Instance appliTestAttr_0 = appliTestAttr.createInstance(null /* composite */, props/* properties */);
    System.out.println("Tested instance : " + appliTestAttr_0.getName());

    //since the composite type has no spec, all initial values are valid.
    //No longer ! all attr must be defined now.
    assertTrue (appliTestAttr_0 != null) ;
    assertNotEquals (appliTestAttr_0.getProperty("testMain"), "valeurTestMain") ;
    assertNotEquals (appliTestAttr_0.getProperty("scope"), "5") ;
    assertNotEquals (appliTestAttr_0.getProperty("impl-name"), "5") ;
    assertNotEquals (appliTestAttr_0.getProperty("location") , "anywhere") ;
    //    assertTrue (appliTestAttr_0.getProperty("testEnumere") == null) ;

    System.out.println("=========== passed testInitialAttributes\n\n");
  }
View Full Code Here

  @Test
  public void PropertiesDataTypeAndLDAPFilteringForBoolean_tc007()
      throws InvalidSyntaxException {

    Implementation samsungImpl = waitForImplByName(null, "SamsungSwitch");
    final Instance samsungInst = samsungImpl.createInstance(null,
        new HashMap<String, String>() {
          {
            put("currentVoltage", "95");
          }
        });

    apam.waitForIt(Constants.CONST_WAIT_TIME);

    auxListProperties("\t", samsungInst);

    String message = "";

    message = String
        .format("Calling match method with filter = %s, should result in True since hasDisplay is %b",
            "(hasDisplay=false)",
            samsungInst.getProperty("hasDisplay"));

    Assert.assertTrue(message, samsungInst.match("(hasDisplay=false)"));

    message = String
        .format("Calling match method with filter = %s, should result in False since hasDisplay is %b",
            "(hasDisplay=true)",
            samsungInst.getProperty("hasDisplay"));

    Assert.assertFalse(message, samsungInst.match("(hasDisplay=true)"));

  }
View Full Code Here

     */

    CompositeType appliSetAttr = apam.createCompositeType(null,  "TestSetAttr", null, "TestAttr", null,null);
    assertTrue(appliSetAttr != null);

    Instance appliSetAttr_0 = appliSetAttr.createInstance(null /* composite */, null/* properties */);
    assertTrue (appliSetAttr_0 != null);
    //assertEquals ((CompositeImpl)appliSetAttr_0.getMainInst () != null);

    System.out.println(" Testing attributes on main implem declared: location = {living, kitchen, bedroom}");
    Implementation impl = appliSetAttr.getMainImpl(); //S1toS2Final
    Specification spec = impl.getSpec() ;
    Instance inst = null ;
    inst = impl.getInst() ; // any instance
    System.out.println("Tested instance : " + inst + ". TestedImpl : " + impl + " Tested spec : " + spec);


    //check attributes defined in the xml
    System.out.println("=========== start testing xml attributes");
    assertEquals (spec.getProperty("S1-Attr"), "coucou") ;
    assertNotEquals (spec.getProperty("s1-attr"), "coucou") ; //case sensitive for attr
    assertNotEquals (spec.getProperty("S1-Attr"), "Coucou") ; // case sensitive for value
    assertEquals (impl.getProperty("S1-Attr"), "coucou") ;
    assertEquals (inst.getProperty("S1-Attr"), "coucou") ;

    assertEquals (spec.getProperty("S1-Enum"), "s1-2") ;
    assertEquals (impl.getProperty("S1-Enum"), "s1-2") ;
    assertEquals (inst.getProperty("S1-Enum"), "s1-2") ;

    //default values S1toS2Final-Attr
    assertNotEquals (spec.getProperty("s1b"), "true") ;
    assertEquals (impl.getProperty("s1b"), "true") ;
    assertEquals (inst.getProperty("s1b"), "true") ;
    assertEquals (impl.getProperty("location"), "bedroom") ;
    assertEquals (inst.getProperty("S1toS2Final-Bool"), "true") ;
    assertNotEquals (impl.getProperty("S1toS2Final-Bool"), "true") ;

    assertTrue (impl.getProperty("S1toS2Final-Attr") == null) ;
    assertTrue (inst.getProperty("S1toS2Final-Attr") == null) ;

    assertEquals (impl.getProperty("testEnumere"), "v2") ;
    assertEquals (inst.getProperty("testEnumere"), "v2") ;

    //    assertTrue (inst.getProperty("S1toS2Final-Bool") == null) ;
    //    assertEquals (inst.getProperty("S1toS2Final-String"), "a String Value") ;
    //    assertTrue (inst.getProperty("badAttr") == null) ;
    System.out.println("=========== passed testing xml attributes");


    System.out.println("=========== start testing setting attributes");

    //    <property   name="autoString" value="aValue" type="string"/>
    //    <property   name="autoSet" value="Z-1, Z-2" type="{Z-0, Z-1, Z-2, Z-3}"/>

    //setting auto defined attributes
    assertEquals (impl.getProperty("autoString"), "aValue") ;
    assertEquals (inst.getProperty("autoString"), "aValue") ;
    assertEquals (impl.getProperty("autoSet"), "Z-1, Z-2") ;
    assertEquals (inst.getProperty("autoSet"), "Z-1, Z-2") ;

    impl.setProperty("autoString", "New-value") ;
    assertEquals (impl.getProperty("autoString"), "New-value") ;
    assertEquals (inst.getProperty("autoString"), "New-value") ;
    impl.setProperty("autoSet", "Z-3, Z-2") ;
    assertEquals (impl.getProperty("autoSet"), "Z-3, Z-2") ;
    assertEquals (inst.getProperty("autoSet"), "Z-3, Z-2") ;

    //is it allowed to set an attribute at the level of its definition ? If YES, it should be equal.
    impl.setProperty("S1toS2Final-String1", "falseVal") ;
    assertEquals(impl.getProperty("S1toS2Final-String1"), "falseVal");

    //Setting spec attributes.
    spec.setProperty("xxx", "value") ;
    assertTrue (spec.getProperty("xxx") == null) ;

    spec.setProperty("S1-Attr", "New-value") ;
    assertEquals (spec.getProperty("S1-Attr"), "New-value") ;
    assertEquals (impl.getProperty("S1-Attr"), "New-value") ;
    assertEquals (inst.getProperty("S1-Attr"), "New-value") ;

    spec.setProperty("S1-Enum", "New-value") ;
    assertEquals (spec.getProperty("S1-Enum"), "s1-2") ;
    spec.setProperty("S1-Enum", "s1-3") ;
    assertEquals (spec.getProperty("S1-Enum"), "s1-3") ;
    assertEquals (impl.getProperty("S1-Enum"), "s1-3") ;
    assertEquals (inst.getProperty("S1-Enum"), "s1-3") ;

    impl.setProperty("S1-Enum", "s1-1") ;
    assertEquals (spec.getProperty("S1-Enum"), "s1-3") ;
    assertEquals (impl.getProperty("S1-Enum"), "s1-3") ;
    assertEquals (inst.getProperty("S1-Enum"), "s1-3") ;

    impl.setProperty("location", "living"); // good
    assertEquals(impl.getProperty("location"), "living");
    assertEquals(inst.getProperty("location"), "living");

    impl.setProperty("location", "Living"); // error: Value is case sensitive
    assertEquals(impl.getProperty("location"), "living");

    impl.setProperty("location", "anywhere"); // error: false value
    assertEquals(impl.getProperty("location"), "living");

    impl.setProperty("testMain", "valeurTestMain"); // error: not defined
    assertTrue(impl.getProperty("testMain") == null);

    impl.setProperty("impl-name", "5"); // error: final attribute
    assertEquals(impl.getProperty("impl-name"), impl.getName());

    //boolean
    impl.setProperty("s1b", "5"); // error: bool attribute
    assertNotEquals(impl.getProperty("s1b"), "5");

    impl.setProperty("s1b", "true"); // Ok
    assertEquals(impl.getProperty("s1b"), "true");
    assertEquals(inst.getProperty("s1b"), "true");

    //integer
    impl.setProperty("s1i", "entier"); // error: int attribute
    assertTrue(impl.getProperty("s1i") == null);

    impl.setProperty("s1i", "5"); // Ok
    assertEquals(impl.getProperty("s1i"), "5");
    assertEquals(inst.getProperty("s1i"), "5");
    impl.setProperty("s1i", "5, 7, 55,985"); // Ok
    assertNotEquals(impl.getProperty("s1i"), "5, 7, 55,985");

    //    assertEquals(inst.getProperty("s1i"), "5, 7, 55,985");

    //    impl.setProperty("s1i", "5, zz, 55,985"); // wrong
    //    assertNotEquals(impl.getProperty("s1i"), "5, zz, 55,985");

    boolean ok  ;

    assertTrue ( inst.match("(s1i>=4)")) ;
    assertTrue (!inst.match("(s1i<=4)")) ;
    assertTrue (!inst.match("(s1i>=6)")) ;
    assertTrue ( inst.match("(s1i<=6)")) ;
    assertTrue (!inst.match("(s1i>=10)")) ;
    assertTrue ( inst.match("(s1i<=10)")) ;
    assertTrue ( inst.match("(s1i>=01)")) ;
    assertTrue (!inst.match("(s1i<=01)")) ;
    assertTrue ( inst.match("(s1i>=-61)")) ;
    assertTrue (!inst.match("(s1i<=-61)")) ;

    impl.setProperty("S1-Attr", "5"); // error: cannot redefine
    assertEquals(spec.getProperty("S1-Attr"), "New-value");

    //field and internal. Set by program when starting
    assertEquals(inst.getProperty("fieldAttr"), "initial set by program");
    String s = "to set the field attribute" ;
    ((TestAttr)inst.getServiceObject()).callS1 (s) ; //callS1 sets the attribute to s
    assertEquals(inst.getProperty("fieldAttr"), s);
    s = "second value" ;
    ((TestAttr)inst.getServiceObject()).callS1 (s) ; //callS1 sets the attribute to s
    assertEquals(inst.getProperty("fieldAttr"), s);
    inst.setProperty("fieldAttr", "a Value") ;
    assertEquals(inst.getProperty("fieldAttr"), s);

    //Refining spec attribute with a field





    inst.setProperty("fieldAttr", "test"); // error: cannot set
    assertNotEquals(impl.getProperty("fieldAttr"), "test");

    //Instances can set spec attributes, if not defined by the implem
    inst.setProperty("OS", "Linux") ; // ok
    assertEquals(inst.getProperty("OS"), "Linux");


    impl.setProperty("setInt", "7, 055"); // for match tests

    System.out.println("\n");
    System.out.println("setInt value is : " + inst.getProperty("setInt"));

    assertTrue ( inst.match("(setInt <* 5, 7, 55,985)")) ;
    assertTrue (!inst.match("(setInt *> 5, 7, 55,985)")) ;
    assertTrue ( inst.match("(setInt <* 05, 7, 55,985)")) ;
    //    assertTrue ( inst.match("(setInt <= 05, 7, 55,985)")) ;

    Set<Integer> setInt = new HashSet<Integer> () ;
    setInt.add(5) ;
    setInt.add(985) ;
    impl.setProperty("setInt", setInt); // for match tests

    System.out.println("\n");
    System.out.println("setInt value is : " + inst.getProperty("setInt"));

    assertTrue ( inst.match("(setInt <* 5, 7, 55,985)")) ;
    assertTrue (!inst.match("(setInt *> 5, 7, 55,985)")) ;
    //    assertTrue ( inst.match("(setInt <* 05, 7, 55,985)")) ;
    //    assertTrue ( inst.match("(setInt <= 05, 7, 55,985)")) ;


    inst.setProperty("OS", "Android, Linux, IOS") ; // ok
    System.out.println("OS=" + inst.getProperty("OS"));
    assertEquals(inst.getProperty("OS"), "Android, Linux, IOS");
    assertTrue(impl.getProperty("OS") == null);

    Set<String> OS = new HashSet<String> () ;
    OS.add("Android") ;
    OS.add("Linux") ;
    OS.add("IOS") ;
    inst.setProperty("OS", OS) ; // ok
    System.out.println("OS=" + inst.getProperty("OS"));
    assertNotEquals(inst.getProperty("OS"), "Android, Linux, IOS");
    assertTrue(impl.getProperty("OS") == null);



    System.out.println("\n");
    System.out.println("OS value is : " + inst.getProperty("OS"));
    System.out.println("toto does not exist. Its value is null");

    //non instantiated attributes
    ok = inst.match("(toto= Android  , Linux  , IOS)") ;
    System.out.println("Matching: (toto= Android  , Linux  , IOS): " + ok);
    ok = inst.match("(toto<*Android  , Linux  , IOS)") ;
    System.out.println("Matching: (toto<*Android  , Linux  , IOS): " + ok);
    ok = inst.match("(toto=testnull)") ;
    System.out.println("Matching: (toto=testnull): " + ok);
    ok = inst.match("(toto<*testnull,)") ;
    System.out.println("Matching: (toto<*testnull,): " + ok);
    ok = inst.match("(toto=testnull)") ;
    System.out.println("Matching: (toto<*testnull): " + ok);

    ok = inst.match("(toto=*)") ;
    System.out.println("Matching: (toto=*): " + ok);
    ok = inst.match("(OS=*)") ;
    System.out.println("Matching: (OS=*): " + ok);
    ok = inst.match("(OS=And*)") ;
    System.out.println("Matching: (OS=And*): " + ok);

    ok = inst.match("(OS*>And*)") ;
    System.out.println("Matching: (OS*>And*): " + ok);
    ok = inst.match("(OS<*And*,)") ;
    System.out.println("Matching: (OS<*And*,): " + ok);
    ok = inst.match("(OS<*And*,L*)") ;
    System.out.println("Matching: (OS<*And*,L*): " + ok);
    ok = inst.match("(OS<*And*)") ;
    System.out.println("Matching: (OS<*And*): " + ok);
    ok = inst.match("(OS=zz*)") ;
    System.out.println("Matching: (OS=zz*): " + ok);
    ok = inst.match("(OS<*zz*)") ;
    System.out.println("Matching: (O*>zz*): " + ok);

    System.out.println("");
    System.out.println("Matching: (OS *> Linux, Android, IOS, Windows): " + ok);
    ok = inst.match("(OS <* Linux, Android, IOS, Windows)";
    System.out.println("Matching: (OS <* Linux, Android, IOS, Windows): " + ok);
    ok = inst.match("(OS *> Linux, Android)";
    System.out.println("Matching: (OS *> Linux, Android): " + ok);
    ok = inst.match("(OS *> Android)";
    System.out.println("Matching: (OS *> Android): " + ok);
    ok = inst.match("(OS *> Android,)";
    System.out.println("Matching: (OS *> Android,): " + ok);
    ok = inst.match("(OS=Android)";
    System.out.println("Matching: (OS=Android): " + ok);   
    ok = inst.match("(OS >=Android)";
    System.out.println("Matching: (OS>=Android): " + ok);   

    ok = inst.match("(OS >=Linux, Android, IOS)";
    System.out.println("Matching: (OS>=Linux, Android, IOS): " + ok);   
    ok = inst.match("(OS >=Android, Linux, IOS)";
    System.out.println("Matching: (OS>=Android, Linux, IOS): " + ok);   
    ok = inst.match("(OS >=Android, Linux   , IOS)";
    System.out.println("Matching: (OS>=Android, Linux   , IOS): " + ok);   


    ok = inst.match("(OS *> Linux, Android, IOS)") ;
    System.out.println("Matching: (OS *> Linux, Android, IOS): " + ok);
    ok = inst.match("(OS <* Linux, Android, IOS)") ;
    System.out.println("Matching: (OS <* Linux, Android, IOS): " + ok);

    ok = inst.match("(OS = Linux, Android, IOS)") ;
    System.out.println("Matching: (OS = Linux, Android, IOS): " + ok);

    ok = inst.match("(OS = Android  , Linux  , IOS)") ;
    System.out.println("Matching: (OS = Android  , Linux  , IOS): " + ok);

    ok = inst.match("(OS *> Linux, Android, IOS,)") ;
    System.out.println("Matching: (OS *> Linux, Android, IOS,): " + ok);
    ok = inst.match("(OS <* Linux, Android, IOS,)") ;
    System.out.println("Matching: (OS <* Linux, Android, IOS,): " + ok);
    ok = inst.match("(OS *> {Linux, Android, IOS})") ;
    System.out.println("Matching: (OS *> {Linux, Android, IOS}): " + ok);
    ok = inst.match("(OS *> [Linux, Android, IOS])") ;
    System.out.println("Matching: (OS *> [Linux, Android, IOS]): " + ok);
    ok = inst.match("(OS *> Linux, Android, IOS)") ;
    System.out.println("Matching: (OS *> Linux, Android, IOS): " + ok);

    inst.setProperty("OS", "Linux, Android, IOS,") ; // ok
    System.out.println("\nOS value is : " + inst.getProperty("OS"));
    ok = inst.match("(OS = Android)";
    System.out.println("Matching: (OS=Android): " + ok);   
    ok = inst.match("(OS >=Android)";
    System.out.println("Matching: (OS >=Android): " + ok);   

    inst.setProperty("OS", "Android,") ; // ok
    System.out.println("\nOS value is : " + inst.getProperty("OS"));
    ok = inst.match("(OS=Android)";
    System.out.println("Matching: (OS=Android): " + ok);   
    ok = inst.match("(OS >=Android)";
    System.out.println("Matching: (OS >=Android): " + ok);   
    System.out.println("\n");


    inst.setProperty("OS", "vxxx") ; //
    assertNotEquals(inst.getProperty("OS"), "vxxx");
    assertTrue(impl.getProperty("OS") == null);

    inst.setProperty("s1c", "s1c-value") ; // ok
    assertEquals(inst.getProperty("s1c"), "s1c-value");

    inst.setProperty("location", "kitchen")// redefine
    assertEquals(impl.getProperty("location"), "living");
    assertEquals(inst.getProperty("location"), "living");


    //Instance has its own defs, and can define spec definiiton if not set in implem
    inst.setProperty("S1toS2Final-Bool", "6") ;
    assertNotEquals(inst.getProperty("S1toS2Final-Bool"), "6");

    inst.setProperty("S1toS2Final-Bool", "false") ;
    assertEquals(inst.getProperty("S1toS2Final-Bool"), "false");

    inst.setProperty("S1toS2Final-location", "xxx") ;
    assertTrue(inst.getProperty("S1toS2Final-location") == null);

    inst.setProperty("S1toS2Final-location", "FinalLiving, FinalKitchen") ;
    assertEquals(inst.getProperty("S1toS2Final-location"), "FinalLiving, FinalKitchen");
    System.out.println("=========== start testing setting attributes");

    /*
    System.out.println("=========== start test Remove Attributes");
    inst.removeProperty ("name") ;
View Full Code Here

  @Test
  public void PropertiesDataTypeAndLDAPFilteringForIntegers_tc006()
      throws InvalidSyntaxException {

    Implementation samsungImpl = waitForImplByName(null, "SamsungSwitch");
    final Instance samsungInst = samsungImpl.createInstance(null,
        new HashMap<String, String>() {
          {
            put("currentVoltage", "95");
          }
        });

    apam.waitForIt(Constants.CONST_WAIT_TIME);

    auxListProperties("\t", samsungInst);

    // int

    String templateMessage = "Calling match method with filter = %s, should result in True since currentVoltage is %n";
    String message = "";

    message = String.format(templateMessage, "(currentVoltage>=95)",
        samsungInst.getProperty("currentVoltage"));

    Assert.assertTrue(message, samsungInst.match("(currentVoltage>=95)"));

    message = String.format(templateMessage, "(currentVoltage<=95)",
        samsungInst.getProperty("currentVoltage"));

    Assert.assertTrue(message, samsungInst.match("(currentVoltage<=95)"));

    message = String.format(templateMessage, "(currentVoltage<=101)",
        samsungInst.getProperty("currentVoltage"));

    Assert.assertTrue(message, samsungInst.match("(currentVoltage<=101)"));

    message = String.format(templateMessage, "(currentVoltage<=96)",
        samsungInst.getProperty("currentVoltage"));

    Assert.assertTrue(message, samsungInst.match("(currentVoltage<=96)"));

    message = String.format(templateMessage, "(currentVoltage>=94)",
        samsungInst.getProperty("currentVoltage"));

    Assert.assertTrue(message, samsungInst.match("(currentVoltage>=94)"));

  }
View Full Code Here

    Implementation consumerImpl = waitForImplByName(null,
        "MessageConsumeImpl01");

    String usecase = "Single producer sending multiple messages, in the consumer site all the messages should be injected in java.util.Queue, all the other types shouldnt be filled with messages. But %s";

    Instance producerApam1 = producer01Impl.createInstance(null, null);

    Instance consumerApam = consumerImpl.createInstance(null, null);

    M1ConsumerImpl01 consumer = (M1ConsumerImpl01) consumerApam
        .getServiceObject();

    M1ProducerImpl producer1 = (M1ProducerImpl) producerApam1
        .getServiceObject();
View Full Code Here

        "MessageProducerImpl03");

    Implementation consumerImpl = waitForImplByName(null,
        "MessageConsumeImpl01");

    Instance producerApam1 = producer01Impl.createInstance(null, null);
    Instance producerApam2 = producer02Impl.createInstance(null, null);
    Instance producerApam3 = producer03Impl.createInstance(null, null);

    Instance consumerApam = consumerImpl.createInstance(null, null);

    M1ConsumerImpl01 consumer = (M1ConsumerImpl01) consumerApam
        .getServiceObject();

    M1ProducerImpl producer1 = (M1ProducerImpl) producerApam1
        .getServiceObject();
    M1ProducerImpl producer2 = (M1ProducerImpl) producerApam2
View Full Code Here

    Implementation consumerImpl = waitForImplByName(null,
        "MessageConsumeImpl01");

    final int POOL_SIZE = 10;

    Instance producer = producerImpl.createInstance(null, null);

    Instance consumer = consumerImpl.createInstance(null, null);

    M1ConsumerImpl01 m1ConsumerImpl = (M1ConsumerImpl01) consumer
        .getServiceObject();

    M1ProducerImpl m1ProdImpl = (M1ProducerImpl) producer
        .getServiceObject();
View Full Code Here

TOP

Related Classes of fr.imag.adele.apam.Instance

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.