Changeset 729

Show
Ignore:
Timestamp:
07/28/10 11:54:00 (6 weeks ago)
Author:
tomoyo
Message:

htn.toも展開するようにした。

Location:
TwitterIrcGateway/trunk/TwitterIrcGatewayCore
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • TwitterIrcGateway/trunk/TwitterIrcGatewayCore/AddIns/ResolveShortUrlServices.cs

    r706 r729  
    2121        { 
    2222            // TinyURL 
    23             e.Text = (CurrentSession.Config.ResolveTinyUrl) ? Utility.ResolveBitlyInMessage(Utility.ResolveTinyUrlInMessage(e.Text)) 
     23            e.Text = (CurrentSession.Config.ResolveTinyUrl) ? Utility.ResolveHatenaInMessage(Utility.ResolveBitlyInMessage(Utility.ResolveTinyUrlInMessage(e.Text))) 
    2424                                                            : e.Text; 
    2525        } 
  • TwitterIrcGateway/trunk/TwitterIrcGatewayCore/TwitterIrcGatewayCore.csproj

    r715 r729  
    249249    <Compile Include="Session.cs" /> 
    250250    <Compile Include="TwitterIMService.cs" /> 
    251     <Compile Include="TwitterService.cs"> 
    252     </Compile> 
     251    <Compile Include="TwitterService.cs" /> 
    253252    <Compile Include="AddIns\TypableMap\TypableMap.cs" /> 
    254253    <Compile Include="AddIns\TypableMap\TypableMapCommandProcessor.cs" /> 
  • TwitterIrcGateway/trunk/TwitterIrcGatewayCore/Utility.cs

    r715 r729  
    6262 
    6363        /// <summary> 
     64        /// 文中の htn.to を展開します。 
     65        /// タイムアウトするまでの時間は1秒です。 
     66        /// </summary> 
     67        /// <param name="message">メッセージ</param> 
     68        /// <returns></returns> 
     69        public static String ResolveHatenaInMessage(String message) 
     70        { 
     71            return ResolveHatenaInMessage(message, 1000); 
     72        } 
     73 
     74        /// <summary> 
    6475        /// 文中の TinyURL を展開します。 
    6576        /// </summary> 
     
    89100            }, RegexOptions.IgnoreCase); 
    90101        } 
     102 
     103        /// <summary> 
     104        /// 文中の htn.to を展開します。 
     105        /// </summary> 
     106        /// <param name="message">メッセージ</param> 
     107        /// <param name="timeOut">タイムアウトするまでの時間</param> 
     108        /// <returns></returns> 
     109        public static String ResolveHatenaInMessage(String message, Int32 timeOut) 
     110        { 
     111            // 改行ゴミがついてるのでついでに削除する 
     112            return Regex.Replace(message, @"(http://(?:htn\.to)/[A-Za-z0-9_/.;%&\-]+)[\r\n]*", delegate(Match m) 
     113            { 
     114                return ResolveRedirectUrl(m.Groups[1].Value, timeOut); 
     115            }, RegexOptions.IgnoreCase); 
     116        } 
     117 
    91118        /// <summary> 
    92119        /// TinyURLをリダイレクト先のURLに展開します。