Package com.ngt.jopenmetaverse.shared.structureddata

Examples of com.ngt.jopenmetaverse.shared.structureddata.OSDArray


    /// Deserialize the message
    /// </summary>
    /// <param name="map">An <see cref="OSDMap"/> containing the data</param>
    public void Deserialize(OSDMap map)
    {
      OSDArray scriptArray = (OSDArray)map.get("Script");

      OSDMap scriptMap = (OSDMap)scriptArray.get(0);

      ItemID = scriptMap.get("ItemID").asUUID();
      Mono = scriptMap.get("Mono").asBoolean();
      ObjectID = scriptMap.get("ObjectID").asUUID();
      Running = scriptMap.get("Running").asBoolean();
View Full Code Here


      OSDMap map = new OSDMap(3);

      OSDMap agent = new OSDMap(1);
      agent.put("AgentID", OSD.FromUUID(AgentID));

      OSDArray agentArray = new OSDArray();
      agentArray.add(agent);

      map.put("AgentData", agentArray);

      OSDArray groupDataArray = new OSDArray(GroupDataBlock.length);

      for (int i = 0; i < GroupDataBlock.length; i++)
      {
        OSDMap group = new OSDMap(6);
        group.put("AcceptNotices", OSD.FromBoolean(GroupDataBlock[i].AcceptNotices));
        group.put("Contribution", OSD.FromInteger(GroupDataBlock[i].Contribution));
        group.put("GroupID", OSD.FromUUID(GroupDataBlock[i].GroupID));
        group.put("GroupInsigniaID", OSD.FromUUID(GroupDataBlock[i].GroupInsigniaID));
        group.put("GroupName", OSD.FromString(GroupDataBlock[i].GroupName));

        group.put("GroupPowers", OSD.FromLong(GroupPowers.getIndex(GroupDataBlock[i].GroupPowers)));
        groupDataArray.add(group);
      }

      map.put("GroupData", groupDataArray);

      OSDArray newGroupDataArray = new OSDArray(NewGroupDataBlock.length);

      for (int i = 0; i < NewGroupDataBlock.length; i++)
      {
        OSDMap group = new OSDMap(1);
        group.put("ListInProfile", OSD.FromBoolean(NewGroupDataBlock[i].ListInProfile));
        newGroupDataArray.add(group);
      }

      map.put("NewGroupData", newGroupDataArray);

      return map;
View Full Code Here

    /// Deserialize the message
    /// </summary>
    /// <param name="map">An <see cref="OSDMap"/> containing the data</param>
    public void Deserialize(OSDMap map)
    {
      OSDArray agentArray = (OSDArray)map.get("AgentData");
      OSDMap agentMap = (OSDMap)agentArray.get(0);
      AgentID = agentMap.get("AgentID").asUUID();

      OSDArray groupArray = (OSDArray)map.get("GroupData");

      GroupDataBlock = new GroupData[groupArray.count()];

      for (int i = 0; i < groupArray.count(); i++)
      {
        OSDMap groupMap = (OSDMap)groupArray.get(i);

        GroupData groupData = new GroupData();

        groupData.GroupID = groupMap.get("GroupID").asUUID();
        groupData.Contribution = groupMap.get("Contribution").asInteger();
        groupData.GroupInsigniaID = groupMap.get("GroupInsigniaID").asUUID();
        groupData.GroupName = groupMap.get("GroupName").asString();
        groupData.GroupPowers = GroupPowers.get(groupMap.get("GroupPowers").asLong());
        groupData.AcceptNotices = groupMap.get("AcceptNotices").asBoolean();
        GroupDataBlock[i] = groupData;
      }

      // If request for current groups came very close to login
      // the Linden sim will not include the NewGroupData block, but
      // it will instead set all ListInProfile fields to false
      if (map.containsKey("NewGroupData"))
      {
        OSDArray newGroupArray = (OSDArray)map.get("NewGroupData");

        NewGroupDataBlock = new NewGroupData[newGroupArray.count()];

        for (int i = 0; i < newGroupArray.count(); i++)
        {
          OSDMap newGroupMap = (OSDMap)newGroupArray.get(i);
          NewGroupData newGroupData = new NewGroupData();
          newGroupData.ListInProfile = newGroupMap.get("ListInProfile").asBoolean();
          NewGroupDataBlock[i] = newGroupData;
        }
      }
View Full Code Here

      home = (OSDMap)osdHome;

      OSD homeRegion = null;
      if ( ((homeRegion = home.get("region_handle")) !=null) && homeRegion.getType().equals(OSDType.Array))
      {
        OSDArray homeArray = (OSDArray)homeRegion;
        if (homeArray.count() == 2)
          HomeRegion = new BigInteger(Utils.int64ToBytes(Utils.uintsToLong((long)homeArray.get(0).asInteger(), (long)homeArray.get(1).asInteger())));
        else
          HomeRegion = new BigInteger("0");
      }

      HomePosition = ParseVector3("position", home);
      HomeLookAt = ParseVector3("look_at", home);
    }
    else
    {
      HomeRegion = new BigInteger("0");
      HomePosition = Vector3.Zero;
      HomeLookAt = Vector3.Zero;
    }

    CircuitCode = (int)ParseUInt("circuit_code", reply);
    RegionX = (int)ParseUInt("region_x", reply);
    RegionY = (int)ParseUInt("region_y", reply);
    SimPort = (short)ParseUInt("sim_port", reply);
    String simIP = ParseString("sim_ip", reply);
    InetAddress[] simIParray = new InetAddress[1];
    if(PlatformUtils.tryParseInetAddress(simIP, simIParray))
      SimIP = simIParray[0];
    else
      simIParray = null;
   
   
    SeedCapability = ParseString("seed_capability", reply);

    // Buddy list
    OSD buddyLLSD = null;
    if ( ((buddyLLSD = reply.get("buddy-list"))!=null) && buddyLLSD.getType().equals(OSDType.Array))
    {
      List<BuddyListEntry> buddys = new ArrayList<BuddyListEntry>();
      OSDArray buddyArray = (OSDArray)buddyLLSD;
      for (int i = 0; i < buddyArray.count(); i++)
      {
        if (buddyArray.get(i).getType().equals(OSDType.Map))
        {
          BuddyListEntry bud = new BuddyListEntry();
          OSDMap buddy = (OSDMap)buddyArray.get(i);

          bud.buddy_id = buddy.get("buddy_id").asString();
          bud.buddy_rights_given = (int)ParseUInt("buddy_rights_given", buddy);
          bud.buddy_rights_has = (int)ParseUInt("buddy_rights_has", buddy);
View Full Code Here

        home = (OSDMap)osdHome;

        OSD homeRegion = home.get("region_handle");
        if (homeRegion !=null && homeRegion.getType().equals(OSDType.Array))
        {
          OSDArray homeArray = (OSDArray)homeRegion;
          if (homeArray.count() == 2)
            HomeRegion = Utils.uintsToULong(homeArray.get(0).asUInteger(),
                homeArray.get(1).asUInteger());
          else
            HomeRegion = BigInteger.ZERO;
        }

        HomePosition = ParseVector3("position", home);
View Full Code Here

      {
        return ((OSDArray)osd).asVector3();
      }
      else if (osd.getType().equals(OSDType.String))
      {
        OSDArray array = (OSDArray)NotationalLLSDOSDParser.DeserializeLLSDNotation(osd.asString());
        return array.asVector3();
      }
    }

    return Vector3.Zero;
  }
View Full Code Here

          return new Vector3(xyz[0][0], xyz[1][0], xyz[2][0]);
        }
      }
      else if (value instanceof String)
      {
        OSDArray array = (OSDArray)NotationalLLSDOSDParser.DeserializeLLSDNotation((String)value);
        return array.asVector3();
      }
      else
        JLogger.warn("ParseVector3 Got unknown type for key " + key + " " + value.toString());
    }
View Full Code Here

  public static UUID ParseMappedUUID(String key, String key2, OSDMap reply)
  {
    OSD folderOSD;
    if (((folderOSD= reply.get(key))!=null) && folderOSD.getType().equals(OSDType.Array))
    {
      OSDArray array = (OSDArray)folderOSD;
      if (array.count() == 1 && array.get(0).getType().equals(OSDType.Map))
      {
        OSDMap map = (OSDMap)array.get(0);
        OSD folder;
        if ((folder = map.get(key2))!=null )
          return folder.asUUID();
      }
    }
View Full Code Here

    List<InventoryFolder> folders = new ArrayList<InventoryFolder>();

    OSD skeleton;
    if (((skeleton = reply.get(key))!=null) && skeleton.getType().equals(OSDType.Array))
    {
      OSDArray array = (OSDArray)skeleton;

      for (int i = 0; i < array.count(); i++)
      {
        if (array.get(i).getType().equals(OSDType.Map))
        {
          OSDMap map = (OSDMap)array.get(i);
          InventoryFolder folder = new InventoryFolder(map.get("folder_id").asUUID());
          folder.PreferredType = AssetType.get((byte)map.get("type_default").asInteger());
          folder.Version = map.get("version").asInteger();
          folder.OwnerID = owner;
          folder.ParentUUID = map.get("parent_id").asUUID();
View Full Code Here

  {
    List<InventoryFolder> folders = new ArrayList<InventoryFolder>();
    OSD skeleton = reply.get(key);
    if (skeleton != null && skeleton.getType() == OSDType.Array)
    {
      OSDArray array = (OSDArray)skeleton;
      for (int i = 0; i < array.count(); i++)
      {
        if (array.get(i).getType().equals(OSDType.Map))
        {
          OSDMap map = (OSDMap)array.get(i);
          InventoryFolder folder = new InventoryFolder(map.get("folder_id").asUUID());
          folder.Name = map.get("name").asString();
          folder.ParentUUID = map.get("parent_id").asUUID();
          folder.PreferredType = AssetType.get((byte)map.get("type_default").asInteger());
          folder.Version = map.get("version").asInteger();
View Full Code Here

TOP

Related Classes of com.ngt.jopenmetaverse.shared.structureddata.OSDArray

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.