⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vcalendarcreator.java

📁 goolge phone 目前没有开放的android 平台的源码
💻 JAVA
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) 
// Source File Name:   VCalendarCreator.java

package android.syncml.pim.vcreator;

import java.util.Iterator;
import java.util.List;

// Referenced classes of package android.syncml.pim.vcreator:
//            CalendarStruct

public class VCalendarCreator
{

    public VCalendarCreator()
    {
    }

    public static String createVCal(CalendarStruct struct, int vcalversion)
        throws Exception
    {
        returnStr = new StringBuffer("");
        version = vcalversion;
        if(version != 1 && version != 2)
            throw new Exception("=== version not match VERSION_VCAL10 or VERSION_VCAL20.");
        returnStr.append("BEGIN:VCALENDAR").append(ENTER);
        if(version == 1)
            returnStr.append("VERSION:1.0").append(ENTER);
        else
            returnStr.append("VERSION:2.0").append(ENTER);
        returnStr.append("PRODID:vCal ID default").append(ENTER);
        if(!isNull(struct.timezone))
            if(version == 1)
                returnStr.append("TZ:").append(struct.timezone).append(ENTER);
            else
                returnStr.append("BEGIN:VTIMEZONE").append(ENTER).append("TZID:vCal default").append(ENTER).append("BEGIN:STANDARD").append(ENTER).append("DTSTART:16010101T000000").append(ENTER).append("TZOFFSETFROM:").append(struct.timezone).append(ENTER).append("TZOFFSETTO:").append(struct.timezone).append(ENTER).append("END:STANDARD").append(ENTER).append("END:VTIMEZONE").append(ENTER);
        for(int i = 0; i < struct.eventList.size(); i++)
        {
            String str = buildEventStr((CalendarStruct.EventStruct)struct.eventList.get(i));
            returnStr.append(str);
        }

        returnStr.append("END:VCALENDAR").append(ENTER).append(ENTER);
        return returnStr.toString();
    }

    private static boolean isNull(String str)
    {
        return str == null || str.trim().equals("");
    }

    private static String foldingString(String str)
    {
        return str.replaceAll("\r\n", "\n").replaceAll("\n", "\r\n ");
    }

    private static String buildEventStr(CalendarStruct.EventStruct stru)
    {
        StringBuffer strbuf = new StringBuffer("");
        strbuf.append("BEGIN:VEVENT").append(ENTER);
        if(!isNull(stru.uid))
            strbuf.append("UID:").append(stru.uid).append(ENTER);
        if(!isNull(stru.description))
            strbuf.append("DESCRIPTION:").append(foldingString(stru.description)).append(ENTER);
        if(!isNull(stru.dtend))
            strbuf.append("DTEND:").append(stru.dtend).append(ENTER);
        if(!isNull(stru.dtstart))
            strbuf.append("DTSTART:").append(stru.dtstart).append(ENTER);
        if(!isNull(stru.duration))
            strbuf.append("DUE:").append(stru.duration).append(ENTER);
        if(!isNull(stru.event_location))
            strbuf.append("LOCATION:").append(stru.event_location).append(ENTER);
        if(!isNull(stru.last_date))
            strbuf.append("COMPLETED:").append(stru.last_date).append(ENTER);
        if(!isNull(stru.rrule))
            strbuf.append("RRULE:").append(stru.rrule).append(ENTER);
        if(!isNull(stru.title))
            strbuf.append("SUMMARY:").append(stru.title).append(ENTER);
        if(!isNull(stru.status))
        {
            String stat = "TENTATIVE";
            if(stru.status.equals("0"))
                stat = "TENTATIVE";
            if(stru.status.equals("1"))
                stat = "CONFIRMED";
            if(stru.status.equals("2"))
                stat = "CANCELLED";
            strbuf.append("STATUS:").append(stat).append(ENTER);
        }
        if(!isNull(stru.has_alarm) && stru.reminderList != null && stru.reminderList.size() > 0)
            if(version == 1)
            {
                String prefix = "";
                for(Iterator i$ = stru.reminderList.iterator(); i$.hasNext(); strbuf.append(prefix).append(":default").append(ENTER))
                {
                    String method = (String)i$.next();
                    if(method.equals("0"))
                        prefix = "DALARM";
                    if(method.equals("1"))
                        prefix = "AALARM";
                    if(method.equals("2"))
                        prefix = "MALARM";
                    if(method.equals("3") || prefix.equals(""))
                        prefix = "DALARM";
                }

            } else
            {
                strbuf.append("BEGIN:VALARM").append(ENTER).append("ACTION:AUDIO").append(ENTER).append("TRIGGER:-PT10M").append(ENTER).append("END:VALARM").append(ENTER);
            }
        strbuf.append("END:VEVENT").append(ENTER);
        return strbuf.toString();
    }

    public static final int VERSION_VCAL10 = 1;
    public static final int VERSION_VCAL20 = 2;
    private static int version;
    private static String ENTER = "\r\n";
    private static StringBuffer returnStr;

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -