You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flex.apache.org by Piotr Zarzycki <pi...@gmail.com> on 2017/09/06 13:52:08 UTC

Re: git commit: [flex-asjs] [refs/heads/feature/amf] - Sucessful Test strong type Value Object communication and casting

Carlos,

Good to see your commit! :)

Thank you!,
Piotr


2017-09-06 15:45 GMT+02:00 <ca...@apache.org>:

> Repository: flex-asjs
> Updated Branches:
>   refs/heads/feature/amf 13accbff8 -> 9d6673a65
>
>
> Sucessful Test strong type Value Object communication and casting
>
>
> Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
> Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/9d6673a6
> Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/9d6673a6
> Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/9d6673a6
>
> Branch: refs/heads/feature/amf
> Commit: 9d6673a6572703d555bc08f57cdc74ee52b96385
> Parents: 13accbf
> Author: Carlos Rovira <ca...@apache.org>
> Authored: Wed Sep 6 15:45:14 2017 +0200
> Committer: Carlos Rovira <ca...@apache.org>
> Committed: Wed Sep 6 15:45:14 2017 +0200
>
> ----------------------------------------------------------------------
>  .../amfsamples/services/ExampleService.java     | 12 +++++
>  .../flex/amfsamples/valueobjects/Product.java   | 54 ++++++++++++++++++++
>  .../RemoteObjectAMFTest/src/main/flex/App.mxml  | 13 ++++-
>  .../src/main/flex/valueObjects/Product.as       | 53 +++++++++++++++++++
>  4 files changed, 131 insertions(+), 1 deletion(-)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> 9d6673a6/examples/amf/SampleAmfWebApp/src/main/java/
> org/apache/flex/amfsamples/services/ExampleService.java
> ----------------------------------------------------------------------
> diff --git a/examples/amf/SampleAmfWebApp/src/main/java/
> org/apache/flex/amfsamples/services/ExampleService.java b/examples/amf/
> SampleAmfWebApp/src/main/java/org/apache/flex/amfsamples/
> services/ExampleService.java
> index 86d6d52..f9071af 100644
> --- a/examples/amf/SampleAmfWebApp/src/main/java/
> org/apache/flex/amfsamples/services/ExampleService.java
> +++ b/examples/amf/SampleAmfWebApp/src/main/java/
> org/apache/flex/amfsamples/services/ExampleService.java
> @@ -20,6 +20,7 @@
>  package org.apache.flex.amfsamples.services;
>
>  import org.apache.flex.amfsamples.valueobjects.ServerCustomType;
> +import org.apache.flex.amfsamples.valueobjects.Product;
>  import org.springframework.flex.remoting.RemotingDestination;
>  import org.springframework.stereotype.Service;
>
> @@ -44,4 +45,15 @@ public class ExampleService {
>          }
>          return customTypes;
>      }
> +
> +    public Product getSomeProduct()
> +    {
> +        System.out.println("getSomeProduct called");
> +
> +        Product product = new Product();
> +        product.setName("Some product");
> +        product.setDescription("This product is only a test typed value
> object to test AMF strong types");
> +
> +        return product;
> +    }
>  }
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> 9d6673a6/examples/amf/SampleAmfWebApp/src/main/java/
> org/apache/flex/amfsamples/valueobjects/Product.java
> ----------------------------------------------------------------------
> diff --git a/examples/amf/SampleAmfWebApp/src/main/java/
> org/apache/flex/amfsamples/valueobjects/Product.java b/examples/amf/
> SampleAmfWebApp/src/main/java/org/apache/flex/amfsamples/
> valueobjects/Product.java
> new file mode 100644
> index 0000000..c77229e
> --- /dev/null
> +++ b/examples/amf/SampleAmfWebApp/src/main/java/
> org/apache/flex/amfsamples/valueobjects/Product.java
> @@ -0,0 +1,54 @@
> +/*
> + * Licensed to the Apache Software Foundation (ASF) under one or more
> + * contributor license agreements.  See the NOTICE file distributed with
> + * this work for additional information regarding copyright ownership.
> + * The ASF licenses this file to You under the Apache License, Version 2.0
> + * (the "License"); you may not use this file except in compliance with
> + * the License.  You may obtain a copy of the License at
> + *
> + *     http://www.apache.org/licenses/LICENSE-2.0
> + *
> + * Unless required by applicable law or agreed to in writing, software
> + * distributed under the License is distributed on an "AS IS" BASIS,
> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> + * See the License for the specific language governing permissions and
> + * limitations under the License.
> + */
> +package org.apache.flex.amfsamples.valueobjects;
> +
> +/**
> + * The server side object used by AMFConnectionTestService. There is a
> + * corresponding client side object.
> + */
> +public class Product
> +{
> +    private String name;
> +    private String description;
> +
> +    public Product()
> +    {
> +    }
> +
> +    public String getName()
> +    {
> +        return name;
> +    }
> +    public void setName(String name)
> +    {
> +        this.name = name;
> +    }
> +
> +    public String getDescription()
> +    {
> +        return description;
> +    }
> +    public void setDescription(String description)
> +    {
> +        this.description = description;
> +    }
> +
> +    public String toString()
> +    {
> +        return "Product -> name: " + name + ", description: " +
> description;
> +    }
> +}
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> 9d6673a6/examples/flexjs/RemoteObjectAMFTest/src/main/flex/App.mxml
> ----------------------------------------------------------------------
> diff --git a/examples/flexjs/RemoteObjectAMFTest/src/main/flex/App.mxml
> b/examples/flexjs/RemoteObjectAMFTest/src/main/flex/App.mxml
> index 116bf8c..117536a 100644
> --- a/examples/flexjs/RemoteObjectAMFTest/src/main/flex/App.mxml
> +++ b/examples/flexjs/RemoteObjectAMFTest/src/main/flex/App.mxml
> @@ -27,6 +27,7 @@ limitations under the License.
>                         import org.apache.flex.net.events.FaultEvent;
>                         import org.apache.flex.net.events.ResultEvent;
>              import valueObjects.ClientValueObject;
> +            import valueObjects.Product;
>
>                         protected function sendName():void
>                         {
> @@ -38,7 +39,11 @@ limitations under the License.
>                                 trace("Result=" + evt.data);
>                                 if (evt.data is String)
>                                         received.text = "Received: " +
> evt.data;
> -                               else
> +                               else if (evt.data is Product)
> +                {
> +                    var product:Product = evt.data as Product;
> +                    received.text = "Received: product name is '" +
> product.name + "' and product description is '" + product.description +
> "'" ;
> +                } else
>                 {
>                      var arr:Array = evt.data as Array;
>                      list.dataProvider = arr;
> @@ -55,6 +60,11 @@ limitations under the License.
>                  service.send("getObjectArray1", []);
>                         }
>
> +            protected function getSomeProduct():void
> +                       {
> +                service.send("getSomeProduct", []);
> +                       }
> +
>              protected function reportChange():void
>              {
>                  var vo:ClientValueObject = list.selectedItem as
> ClientValueObject;
> @@ -83,6 +93,7 @@ limitations under the License.
>                         <js:Label id="received" width="300"/>
>              <js:TextButton text="Get Array of ValueObjects"
> click="getVOs()"/>
>              <js:List id="list" labelField="id" width="100" height="100"
> change="reportChange()"/>
> +            <js:TextButton text="Get Some Product"
> click="getSomeProduct()"/>
>          </js:View>
>      </js:initialView>
>
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> 9d6673a6/examples/flexjs/RemoteObjectAMFTest/src/main/
> flex/valueObjects/Product.as
> ----------------------------------------------------------------------
> diff --git a/examples/flexjs/RemoteObjectAMFTest/src/main/flex/valueObjects/Product.as
> b/examples/flexjs/RemoteObjectAMFTest/src/main/
> flex/valueObjects/Product.as
> new file mode 100644
> index 0000000..aa9e75a
> --- /dev/null
> +++ b/examples/flexjs/RemoteObjectAMFTest/src/main/
> flex/valueObjects/Product.as
> @@ -0,0 +1,53 @@
> +///////////////////////////////////////////////////////////
> /////////////////////
> +//
> +//  Licensed to the Apache Software Foundation (ASF) under one or more
> +//  contributor license agreements.  See the NOTICE file distributed with
> +//  this work for additional information regarding copyright ownership.
> +//  The ASF licenses this file to You under the Apache License, Version
> 2.0
> +//  (the "License"); you may not use this file except in compliance with
> +//  the License.  You may obtain a copy of the License at
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.0
> +//
> +//  Unless required by applicable law or agreed to in writing, software
> +//  distributed under the License is distributed on an "AS IS" BASIS,
> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +//  See the License for the specific language governing permissions and
> +//  limitations under the License.
> +//
> +///////////////////////////////////////////////////////////
> /////////////////////
> +package valueObjects
> +{
> +    [RemoteClass(alias="org.apache.flex.amfsamples.
> valueobjects.Product")]
> +       public class Product
> +       {
> +               public function Product()
> +               {
> +               }
> +
> +               private var _name:String;
> +
> +        public function get name():String
> +        {
> +            return _name;
> +        }
> +
> +        public function set name(value:String):void
> +        {
> +            _name = value;
> +        }
> +
> +        private var _description:String;
> +
> +        public function get description():String
> +        {
> +            return _description;
> +        }
> +
> +        public function set description(value:String):void
> +        {
> +            _description = value;
> +        }
> +
> +       }
> +}
>
>


-- 

Piotr Zarzycki

mobile: +48 880 859 557
skype: zarzycki10

LinkedIn: http://www.linkedin.com/piotrzarzycki
<https://pl.linkedin.com/in/piotr-zarzycki-92a53552>